Одна из распространенных проблем с одностраничными приложениями - обновление ресурсов сайта, когда они были изменены. Inertia упрощает это, при необходимости отслеживая текущую версию ресурсов Вашего сайта. В случае изменения актива Inertia автоматически выполнит жесткое посещение страницы вместо обычного посещения ajax при следующем запросе.
Чтобы включить автоматическое обновление ресурсов, Вам просто нужно сообщить Inertia, какая у Вас текущая версия. Это может быть любая string
(буквы, числа или хеш файла), если она изменяется при обновлении Ваших ресурсов.
/*
|----------------------------------------------------------------
| Через мидлвар HandleInertiaRequests (рекомендуется)
|----------------------------------------------------------------
*/
class HandleInertiaRequests extends Middleware
{
public function version(Request $request)
{
return parent::version($request);
}
}
/*
|----------------------------------------------------------------
| Вручную
|----------------------------------------------------------------
*/
use Inertia\Inertia;
Inertia::version($version);
Inertia::version(fn () => $version); // Отложенно
Обновление активов в Inertia работает в предположении, что посещение жесткой страницы приведет к перезагрузке Ваших активов. Однако Inertia на самом деле ничего не делает для этого. Обычно это делается с помощью той или иной формы очистки кеша. Например, добавление параметра запроса версии в конец URL-адресов Ваших ресурсов.
Если Вы используете Laravel Mix, Вы можете сделать это автоматически, включив версионирование в Вашем файле webpack.mix.js
.