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

Отключение SSR для страницы в Inertia

Давайте рассмотрим ситуацию, когда SSR включён для всего сайта, но один раздел тянет только браузерные API или тяжёлый виджет, который на Node падает. Проще оставить SSR для витрины и новостей, а внутреннюю панель отдавать как чистый клиентский экран без попытки пререндера.

Inertia умеет исключать шаблоны маршрутов из SSR. В middleware приложения задают свойство withoutSsr: массив масок в стиле Laravel, и для совпавших адресов адаптер не шлёт запрос на SSR-сервер.

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

<?php namespace App\Http\Middleware; use Inertia\Middleware; class HandleInertiaRequests extends Middleware { /** * @var array<int, string> */ protected $withoutSsr = [ 'console/*', ]; }

Давайте опишем страницу внутри исключённого раздела:

<?php use Illuminate\Support\Facades\Route; use Inertia\Inertia; Route::get('/console/workers', function () { return Inertia::render('Console/Workers', [ 'room' => 'Ops', ]); }); ?>

Для адресов /staff/* настройте middleware так, чтобы SSR не применялся к экранам работников в личном кабинете Staff.

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