Laravel + Inertia: 重定向时切换 rootView 布局

Laravel + Inertia: switch rootView layout when redirecting

我在我的项目中使用 Laravel + Inertia + React,我在 HandleInertiaRequests 中间件中定义了 rootView 布局,具体取决于请求的路由,如下所示:

  public function rootView(Request $request)
  {
    if ($request->route()->getPrefix() == "/admin") {
      return "adm";
    } else {
      return "app";
    }
  }

但是我在从 app rootView 的路由重定向到 adm rootView 的路由(从 /login 到 /admin)时发现了一个问题。

问题是 rootView 在重定向之前或之后都没有改变。有没有办法强制重定向重新加载整个页面?

我在这个线程中找到了解决方案:。诀窍是将以下内容添加到 AuthenticatedSessionController 的登录请求中:

if ($request->session()->has("url.intended")) {
  return Inertia::location(session("url.intended"));
}

我留下我原来的问题,以防其他人发现它有用。