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

Опрос в Inertia

Давайте познакомимся с хелпером usePoll. Он подключается из пакета @inertiajs/vue3 и раз в заданный интервал запускает перечитывание текущей страницы - тот же ответ сервера, что и при первом заходе на адрес. Пропсы на экране подменяются свежими значениями без полной перезагрузки сайта.

Единственный обязательный аргумент - интервал в миллисекундах. Хелпер стартует, когда компонент смонтирован, и сам останавливается, если человек ушёл со страницы. Так удобно держать на экране живую цифру или метку времени, которую сервер пересчитывает при каждом опросе.

Давайте отдадим метку обновления с сервера:

<?php use Illuminate\Support\Facades\Route; use Inertia\Inertia; Route::get('/dashboard', function () { return Inertia::render('Dashboard', [ 'refreshed_at' => now()->toDateTimeString(), ]); }); ?>

Давайте выведем метку и подключим опрос с интервалом три секунды:

<script setup> import { usePoll } from '@inertiajs/vue3' defineProps({ refreshed_at: String, }) usePoll(3000) </script> <template> <p>Updated: {{ refreshed_at }}</p> </template>

Сделайте страницу работников Office с пропсом synced_at, чтобы метка на экране сама обновлялась каждые пять секунд, пока открыта страница.

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