ルーティング
ルートの構成
ルートは、URLセグメントとUI要素を組み合わせた<Routes>
と<Route>
をレンダリングすることで構成されます。
より大規模なサンプル構成を以下に示します。
ネストされたルート
ルートは親ルートの中にネストすることができます。
親のパスは子に自動的に含まれるため、この構成では"/dashboard"
と"/dashboard/settings"
の両方のURLが作成されます。
子ルートは、親ルートの<Outlet/>
を通してレンダリングされます。
レイアウトルート
path
を持たないルートは、その子に対して新しいネストを作成しますが、URLにセグメントを追加しません。
インデックスルート
インデックスルートは、親のURL(デフォルトの子ルートのようなもの)で親の<Outlet/>
にレンダリングされます。index
プロパティで設定されます。
インデックスルートには子を持たせることができないことに注意してください。そのような動作を期待している場合は、おそらくレイアウトルートを使用する必要があります。
ルートプレフィックス
element
プロパティのない<Route path>
は、親レイアウトを導入することなく、その子ルートにパスプレフィックスを追加します。
動的セグメント
パスセグメントが:
で始まる場合、「動的セグメント」になります。ルートがURLと一致すると、動的セグメントはURLから解析され、useParams
などの他のルーターAPIにparams
として提供されます。
1つのルートパスに複数の動的セグメントを含めることができます。
オプションセグメント
セグメントの最後に?
を追加することで、ルートセグメントをオプションにすることができます。
オプションの静的セグメントも持つことができます。
スプラット
「キャッチオール」や「スター」セグメントとも呼ばれます。ルートパスパターンが/*
で終わる場合、/
を含む/
以降の文字と一致します。
*
をデストラクチャリングできますが、新しい名前を付ける必要があります。一般的な名前はsplat
です。
リンク
Link
とNavLink
を使用して、UIからルートにリンクします。