2.3. Действия
Действия Livewire — это методы вашего компонента, которые могут быть вызваны с фронтенда, например, при клике на кнопку или отправке формы. Они позволяют вызывать PHP-методы напрямую из браузера, обеспечивая удобную разработку и позволяя сосредоточиться на логике приложения без необходимости писать шаблонный код для связи между фронтендом и бекендом.
Давайте рассмотрим базовый пример вызова действия save в компоненте CreatePost:
<?php namespace App\Livewire; use Livewire\Component;use App\Models\Post; class CreatePost extends Component{ public $title = ''; public $content = ''; public function save() { Post::create([ 'title' => $this->title, 'content' => $this->content, ]); return redirect()->to('/posts'); } public function render() { return view('livewire.create-post'); }}
<form wire:submit="save"> <input type="text" wire:model="title"> <textarea wire:model="content"></textarea> <button type="submit">Сохранить</button></form>
В приведённом выше примере, когда пользователь отправляет форму, нажимая «Сохранить», директива wire:submit перехватывает событие submit и вызывает действие save() на сервере.
По сути, действия — это удобный способ связать пользовательские взаимодействия с серверной логикой без необходимости вручную отправлять и обрабатывать AJAX-запросы.
1. Обновление компонента
Иногда может потребоваться простое «обновление» компонента. Например, если у вас есть компонент, проверяющий статус чего-либо в базе данных, вы можете предоставить пользователю кнопку для обновления отображаемых результатов.