Цього тижня вийшло оновлення Laravel Livewire до версії 3.6, яке включає нові HTML директиви для показу та приховування елементів DOM, а також JavaScript дії
Кейлеб Позріо додав можливість визначати JavaScript дії, які є функціями, що можуть викликатися з wire:click або $wire, щоб виконувати код на стороні клієнта або застосовувати оптимістичні оновлення перед відправкою запиту на сервер
Ось приклад з Pull Request #9202:
<?php
use Livewire\Volt\Component;
new class extends Component {
public function save()
{
// ...
}
};
?>
<div>
<button wire:click="doSomething">Зробити щось</button>
</div>
@script
<script>
$js('doSomething', () => {
console.log('doSomething');
$wire.save()
});
</script>
@endscript
Також можна викликати JavaScript дії з PHP за допомогою методу ->js():
$this->js('onPostSaved');
Детальніше про JavaScript дії можна дізнатися в документації з дій
Джош Ханлі додав директиви wire:show та wire:text, а Кейлеб Позріо — wire:cloak та wire:transition
Директиви wire:show та wire:text є аналогами x-show та x-text в Alpine. Наприклад, директива wire:show дозволяє перемикати видимість елемента за допомогою CSS:
<div>
<button x-on:click="$wire.showModal = true">Новий пост</button>
<div wire:show="showModal">
<form wire:submit="save">
<textarea wire:model="content"></textarea>
<button type="submit">Зберегти пост</button>
</form>
</div>
</div>
Директива wire:text динамічно оновлює вміст елемента і є корисною для створення оптимістичних інтерфейсів:
<div>
<button x-on:click="$wire.likes++; $wire.like()">❤️ Подобається</button>
Лайків: <span wire:text="likes"></span>
</div>
Докладніше про нові директиви можна дізнатися з документації Livewire:
wire:cloak (документація)wire:show (документація)wire:text (документація)wire:transition (документація)Повний список нових можливостей доступний у порівнянні між версіями 3.5.20 та 3.6.0 на GitHub. Більше інформації про ці функції та інші можна знайти в документації Livewire
Чи стикалися ви з помилкою «SQLSTATE[HY000] [2002] Connection refused» під час налаштування GitHub Actions для вашого додатку на Laravel? У нашій статті ми розглянемо три поширені причини цієї помилки та надамо рішення для їх усунення. Читайте далі, щоб дізнатися, як ваш CI/CD потік може працювати бездоганно!
Ви знали, що в одному додатку Laravel можна реалізувати кілька API? У нашій статті ви дізнаєтеся, як за допомогою Scramble легко документувати різні версії API та налаштувати доступ до документації, щоб зробити її публічною або приватною. Читайте далі, щоб дізнатися більше
Вперше у світі Laravel з'являється можливість, яка значно спростить ваше повсякденне програмування завдяки новому пакету Laravel Boost. Читайте статтю, щоб дізнатися, як посилена інтеграція штучного інтелекту може підвищити ефективність вашої роботи та оптимізувати створення проектів у Laravel