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

Ограничение частоты вызова в Livewire

Пусть кнопку жмут подряд, и метод успевает срабатывать слишком часто. Счётчик скачет на каждое нажатие, хотя на экране достаточно редких обновлений.

Модификатор .throttle задаёт минимальный интервал между вызовами. Пока пауза не прошла, лишние клики метод не отправляют.

Страница откроется по адресу /posts/tap. Давайте опишем компонент PostTap:

<?php namespace App\Livewire; use Livewire\Component; class PostTap extends Component { public $count = 0; public function tap() { $this->count++; } public function render() { return view('livewire.post-tap'); } } ?>

Давайте повесим на кнопку throttle и выведем счётчик:

<div> <button wire:click.throttle.500ms="tap"> Tap </button> <div>{{ $count }}</div> </div>

Давайте откроем страницу по адресу /posts/tap:

<?php Route::get('/posts/tap', function () { return view('posts-tap'); }); ?>

Давайте вставим компонент на страницу:

<x-layout> <livewire:post-tap /> </x-layout>

Создайте компонент EmployeeTap. Частые нажатия считают работника не чаще раза в полсекунды.

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