РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗pplwPmPgUb 50 of 76 menu
◀ ▶

Сохранение прежнего значения в Livewire

Давайте теперь возьмём поле заголовка поста. Человек меняет текст, и прежняя строка сразу пропадает: на странице остаётся только то, что набрано сейчас. Иногда перед подменой старое значение ещё нужно увидеть.

Перед тем как Livewire запишет новое значение в свойство, срабатывает метод updating. В этот момент в свойстве ещё лежит старый текст, его можно скопировать куда нужно. После записи в $title уже будет новая строка.

Давайте создадим компонент PostDraft:

php artisan make:livewire PostDraft --class

Давайте зададим заголовок и пустое свойство для прошлого текста, а в методе updating сохраним текущий заголовок:

<?php namespace App\Livewire; use Livewire\Component; class PostDraft extends Component { public $title = 'News'; public $previous = ''; public function updating($property, $value) { $this->previous = $this->title; } public function render() { return view('livewire.post-draft'); } } ?>

Давайте в шаблоне повесим на поле привязку с .live, иначе хук дождётся следующего запроса, и под полем выведем прежний текст:

<div> <input type="text" wire:model.live="title"> <div>{{ $previous }}</div> </div>

Создайте компонент EmployeeName с полем имени. Сделайте так, чтобы перед сменой имени на странице оставалось прежнее.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить