React router dom v6,嵌套的好方法?
React router dom v6, good way for nesting?
只是想知道如果我想在单独的页面上显示它们,这是否是使用 react-router-dom 为嵌套元素键入代码的正确方法?
import { BrowserRouter, Routes, Route } from 'react-router-dom'
import Main from './routes/main/Main'
import Comments from './routes/TaskComments/Comments'
import Tasks from './routes/Tasks/Tasks'
function App() {
return (
<div className="App">
<BrowserRouter>
<Routes>
<Route path="/" element={<Main />} />
<Route path="tasks" element={<Tasks />} />
<Route path="tasks/comments" element={<Comments />} />
</Routes>
</BrowserRouter>
</div>
)
}
export default App
你并没有真正用简单的路由列表嵌套任何东西:
<Routes>
<Route path="/" element={<Main />} />
<Route path="tasks" element={<Tasks />} />
<Route path="tasks/comments" element={<Comments />} />
</Routes>
但是这样做wrong/incorrect没有任何意义。
如果你想嵌套路由,你可以这样做:
<Routes>
<Route path="/" element={<Main />} />
<Route path="tasks">
<Route index element={<Tasks />} /> // <-- "/tasks"
<Route path="comments" element={<Comments />} /> // <-- "/tasks/comments"
</Route>
</Routes>
只是想知道如果我想在单独的页面上显示它们,这是否是使用 react-router-dom 为嵌套元素键入代码的正确方法?
import { BrowserRouter, Routes, Route } from 'react-router-dom'
import Main from './routes/main/Main'
import Comments from './routes/TaskComments/Comments'
import Tasks from './routes/Tasks/Tasks'
function App() {
return (
<div className="App">
<BrowserRouter>
<Routes>
<Route path="/" element={<Main />} />
<Route path="tasks" element={<Tasks />} />
<Route path="tasks/comments" element={<Comments />} />
</Routes>
</BrowserRouter>
</div>
)
}
export default App
你并没有真正用简单的路由列表嵌套任何东西:
<Routes>
<Route path="/" element={<Main />} />
<Route path="tasks" element={<Tasks />} />
<Route path="tasks/comments" element={<Comments />} />
</Routes>
但是这样做wrong/incorrect没有任何意义。
如果你想嵌套路由,你可以这样做:
<Routes>
<Route path="/" element={<Main />} />
<Route path="tasks">
<Route index element={<Tasks />} /> // <-- "/tasks"
<Route path="comments" element={<Comments />} /> // <-- "/tasks/comments"
</Route>
</Routes>