useSelectedLayoutSegments
useSelectedLayoutSegments
は、そのフックが呼び出されたレイアウトの下にあるアクティブなルートセグメントを読み取ることができるクライアントコンポーネントのフックです。
これは、アクティブな子セグメントを把握する必要がある親レイアウト内の UI を作成する際に役立ちます。例えば、パンくずリストなどです。
補足:
useSelectedLayoutSegments
はクライアントコンポーネントのフックであり、レイアウトはデフォルトでサーバーコンポーネントであるため、通常はレイアウトにインポートされたクライアントコンポーネントを通じて呼び出されます。- 返されるセグメントにはルートグループが含まれており、UI に含めたくない場合があります。
filter()
メソッドを使用して、角括弧で始まる項目を削除できます。
パラメータ
useSelectedLayoutSegments
は、オプションで parallelRoutesKey
を受け取り、そのスロット内のアクティブなルートセグメントを読み取ることができます。
戻り値
useSelectedLayoutSegments
は、フックが呼び出されたレイアウトから1レベル下のアクティブなセグメントを含む文字列の配列を返します。セグメントが存在しない場合は空の配列を返します。
例えば、以下のレイアウトと URL の場合、返されるセグメントは次のようになります:
レイアウト | 訪問した URL | 返されるセグメント |
---|---|---|
app/layout.js | / | [] |
app/layout.js | /dashboard | ['dashboard'] |
app/layout.js | /dashboard/settings | ['dashboard', 'settings'] |
app/dashboard/layout.js | /dashboard | [] |
app/dashboard/layout.js | /dashboard/settings | ['settings'] |
バージョン履歴
バージョン | 変更点 |
---|---|
v13.0.0 | 導入時期:useSelectedLayoutSegments |