Menu

ルートグループ

app ディレクトリでは、ネストされたフォルダは通常URLパスにマッピングされます。しかし、フォルダをルートグループとしてマークすることで、そのフォルダがルートのURLパスに含まれないようにすることができます。

これにより、URLパス構造に影響を与えることなく、ルートセグメントとプロジェクトファイルを論理的なグループに整理することができます。

ルートグループは以下のような用途に役立ちます:

  • サイトセクション、目的、またはチームごとにルートをグループ化する
  • 同じルートセグメントレベルでネストされたレイアウトを有効にする:
    • 同じセグメントに複数のネストされたレイアウトを作成する(複数のルートレイアウトを含む)
    • 特定のセグメントをレイアウトに組み込む
  • 特定のルートにローディングスケルトンを適用する

規則

ルートグループは、フォルダ名を括弧で囲むことで作成できます:(folderName)

補足:

  • ルートグループの命名は、整理以外に特別な意味を持ちません。URLパスには影響しません。
  • ルートグループを含むルートは、他のルートと同じURLパスに解決すべきではありません。例えば、ルートグループはURL構造に影響を与えないため、(marketing)/about/page.js(shop)/about/page.jsはどちらも/aboutに解決され、エラーの原因となります。
  • 最上位のlayout.jsファイルなしで複数のルートレイアウトを使用する場合、ホームのpage.jsファイルはいずれかのルートグループで定義する必要があります。例:app/(marketing)/page.js
  • 複数のルートレイアウト間を移動すると、完全なページ読み込みが発生します(クライアントサイドナビゲーションとは対照的に)。例えば、app/(shop)/layout.jsを使用する/cartからapp/(marketing)/layout.jsを使用する/blogに移動すると、完全なページ読み込みが発生します。これは複数のルートレイアウトにのみ適用されます。