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

Отмена запросов в Inertia

Представим страницу архива постов, где тяжёлый список подгружают по кнопке. Человек нажал загрузку, передумал и хочет остановить запрос, не дожидаясь ответа и не открывая другую вкладку.

Метод cancelAll у объекта router обрывает все текущие визиты сразу. Его вызывают без аргументов из обработчика отдельной кнопки или из логики, когда нужно начать заново, не принимая запоздавший ответ.

Давайте отдадим страницу архива:

<?php use Illuminate\Support\Facades\Route; use Inertia\Inertia; Route::get('/posts/archive', function () { return Inertia::render('Posts/Archive'); }); ?>

Давайте запустим переход и добавим кнопку отмены:

<script setup> import { router } from '@inertiajs/vue3' function loadArchive() { router.get('/posts/archive') } function stopRequests() { router.cancelAll() } </script> <template> <h1>Archive</h1> <button type="button" @click="loadArchive"> Load </button> <button type="button" @click="stopRequests"> Stop </button> </template>

Добавьте на страницу списка работников Paul отдельную кнопку, которая обрывает все запросы, уже ушедшие на сервер.

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