概要

サーバー側のレンダラー(packages/nuxt/src/runtime/server/renderer)まわり。レンダリング中のエラーは、これまで /__nuxt_error への新しいリクエストで描画し直していたが、experimental.inlineErrorRendering(compatibilityVersion: 5 でデフォルト有効)を使うとレンダラーの fetch 内の try/catch で同じイベントのまま error.vue を描画する。この場合、失敗したレンダリングのヘッダー・Cookie は残り、Nitro のミドルウェアやルートルールは 2 回目には通らない。JSON リクエストは error.vue を使わず throw する。また、ペイロードの URL(_payload.json)はオリジン相対パスとして解釈される。

主な API・オプション

  • experimental.inlineErrorRendering — エラーページをレンダラー内で直接描画する(compatibilityVersion: 5 でデフォルト有効)
  • captureError / onDevError — インライン描画時に捕捉したエラーが渡される
  • render:html — エラーページでは元のイベントで発火する
  • /__nuxt_error — 従来のエラー描画用エンドポイント(インライン描画では使われない)

変更履歴

  • 2026-09-25 — ペイロードの URL をオリジン相対パスとして解釈するよう修正(#36409)⏳ 未リリース · 変更
  • 2026-09-24 — エラーページをレンダラー内で直接描画する experimental.inlineErrorRendering を追加(#36399)⏳ 未リリース · 変更

関連