概要

クライアント側のルーター・レイアウト遷移・ルートルールまわり。Vue Router が知らないパス(public/ のファイルへのリンクなど)へのクライアント側ナビゲーションは、404 を出さずにハードリロードへ切り替える(experimental オプション、デフォルト有効)。アプリ側のルートルールは base URL からの相対パスで照合される。pages/ を使わない場合のルーターも base URL を考慮し、ミドルウェアのフラグをクリアする。レイアウトが切り替わる遷移では、NuxtLayout の onBeforeLeave が pending 中の nuxtApp['~transitionPromise'] を再利用し、離脱したページの head エントリが確実に破棄される。

主な API・オプション

  • external 属性 — クライアント側ルーティングを使わないリンクにする。付け忘れた public ファイルへのリンクはハードリロードで表示される
  • NuxtLayout / NuxtPage — レイアウト・ページの遷移。nuxtApp['~transitionPromise'] で head エントリの破棄を遅らせる
  • ルートルール(routeRules)— アプリ側では base からの相対パスで照合

変更履歴

  • 2026-09-26 — クライアント側ナビゲーションで一致しない public ファイルへのリンクをハードリロードで表示(#36169)⏳ 未リリース · 変更
  • 2026-09-26 — pages/ を使わないルーターで base URL の考慮とミドルウェアフラグのクリアを修正(#36034)⏳ 未リリース · 変更
  • 2026-09-26 — レイアウト切り替え時に古いページの head エントリが残る不具合を修正(#36395)⏳ 未リリース · 変更
  • 2026-09-24 — アプリのルートルールを base からの相対パスで照合するよう修正(#36408)⏳ 未リリース · 変更

関連