我想创建一条路径/orders/{order_id}/detail
使用 react 路由器。我该如何在 <Route />
上执行此操作组件以及使用 <Link />
时导航到该路径。
目前我有这样的
<Route exact path='/orders/:id' component={OrderDetails} />
但我想要这样
<Route exact path='/orders/:id/detail' component={OrderDetails} />
感谢任何帮助。
最佳答案
这条路线:
<Route exact path='/orders/:id/detail' component={OrderDetails} />
是正确的,它将在此 uri 上呈现 OrderDetails
组件:
/orders/whatEverId/details
重点是导航到这个 url 来渲染该组件,因为你需要知道直接使用 React Router 渲染的每个组件都有三个额外的 props,location
、match
和 history
,如果你使用基于类的组件,你可以自动从 this.props
获取它们,如果你使用函数组件,你需要使用它们的钩子(Hook)react-router
提供了名为 useParams
的钩子(Hook),并从 url 中解构你想要的参数。
更多信息是here
关于javascript - 如何在react-router中创建 `/orders/:id/detail`路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60904485/