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. Обновление компонента

Иногда может потребоваться простое «обновление» компонента. Например, если у вас есть компонент, проверяющий статус чего-либо в базе данных, вы можете предоставить пользователю кнопку для обновления отображаемых результатов.