Route中没有path属性

  1. <Route element={<h1>我没有路径</h1>}>
  2. <Route path="*" element={<h1>我是没有路径下的内容</h1>} />
  3. </Route>

如果Route没有path,一般是将element作为layout组件来使用。但是也带有路由的功能呢。子路由必须匹配才能展示相应的组件。

Route中有多个index的子路由

  1. <Routes>
  2. {/* index的优先级要高一点 */}
  3. <Route index element={<h1>我是detail默认的内容</h1>} />
  4. <Route index element={<h1>我是detail默认的内容111</h1>} />
  5. {/* index写入多个的话,只会有第一个生效 */}
  6. <Route path=":id" element={<A ref={h1Ref} />} />
  7. <Route
  8. path="/"
  9. element={
  10. <h1>我是detail的根路径,这里的/是相对于detail父路径匹配的内容</h1>
  11. }
  12. />
  13. </Routes>

多个index的话,只会渲染第一个index对应的组件的内容。同时又index/路由的话,只会匹配index对应的组件的内容。