Хук одного свойства в Livewire
Давайте рассмотрим ситуацию, когда на форме поста два поля, имя и город, а под ними короткая заметка. Заметка должна следовать за городом. Если отзываться на любое изменение формы, смена имени тоже перепишет заметку, хотя имя к ней не относится.
Для отдельного свойства можно
завести метод updatedCity.
Livewire вызовет его только когда
меняется $city. Смена
$name этот метод не
трогает.
Давайте создадим компонент
PostPlace:
php artisan make:livewire PostPlace --class
Давайте заведём два поля и
заметку, а метод updatedCity
запишет город в заметку:
<?php
namespace App\Livewire;
use Livewire\Component;
class PostPlace extends Component
{
public $name = '';
public $city = '';
public $note = '';
public function updatedCity($value)
{
$this->note = $value;
}
public function render()
{
return view('livewire.post-place');
}
}
?>
Давайте в шаблоне свяжем оба поля
с wire:model.live и
выведем заметку:
<div>
<input type="text" wire:model.live="name">
<input type="text" wire:model.live="city">
<div>{{ $note }}</div>
</div>
Создайте компонент EmployeeDesk
с полями телефона и комнаты.
Сделайте так, чтобы заметка
менялась только когда меняется
телефон.