我现在正在学习 React Router。我有以下一组路线:
<Routes>
<Route path="/" element={<Home />} />
<Route path="/books">
<Route path=":id" element={<Book />} />
<Route path="new" element={<NewBook />} />
<Route index element={<BookList />} />
</Route>
</Routes>
如果我将最后一条路线中的
index
替换为 path=""
,我看不到行为上的差异。
{// ...
<Route path="" element={<BookList />} />
为什么我更喜欢使用
index
,而不是path=""
?
没有有效差异。空路径追加到父路由中;因此,
index
和 path=""
都会评估为 /books
路线。
为什么我更喜欢使用
,而不是index
?path=""
可能最好是明确的,但我不认为社区已经发展到强烈偏爱其中一种。除了在路由匹配方面索引路由的含义之外,索引路由指南也没有深入研究这个概念。恕我直言,使用
index
属性可以使意图清晰,并且看起来比传递空路径字符串更干净。
路径为“”的路由可以有子路由。与索引路线不同。