Вызов метода компонента по клику в Livewire
Число просмотров на странице есть, но само оно не меняется. Чтобы счётчик рос после действия читателя, в классе нужен метод, который увеличивает свойство.
Метод сам по себе с кнопки не
запускается. Атрибут wire:click
связывает кнопку с методом: по клику
вызывается этот метод на сервере
и заново рисуется фрагмент
с новым числом.
Давайте соберём компонент
PostViews с методом
inc, который прибавляет
единицу к $views:
<?php
namespace App\Livewire;
use Livewire\Component;
class PostViews extends Component
{
public $views = 0;
public function inc()
{
$this->views++;
}
public function render()
{
return view('livewire.post-views');
}
}
?>
В шаблоне покажем число и кнопку,
которая вызывает inc:
<div>
{{ $views }}
<button type="button" wire:click="inc">
+1
</button>
</div>
Сделайте кнопку, которая увеличивает зарплату работника.