我一直在尝试理解嵌套路由并在React v4 Router中进行切换。 考虑主路由器如下所示(简化):
\\.
“仪表板”组件呈现子路线:
.*
“ EditNotePage”组件可以通过以下方式访问参数:
<Switch>
<Route path="/" component={LoginPage} exact={true} />
<Route path="/dashboard/edit/:id" component={DashboardPage} />
<Route path="/dashboard" component={DashboardPage} />
</Switch>
这是正确的方法吗? 两次指定“ / dashboard / edit /:id”似乎有点多余(?) 一次在主路由器中,再一次在仪表板组件中。
但是,如果我不匹配主路由器“ Switch”中的路由,则“ props.match.params.id”将无法访问,因为“ props.match”将仅指向“ / dashboard”。
我是否错过了一些有关React v4 Router如何工作的关键信息? :)
亲切的问候 柯密特
答案 0 :(得分:2)
不,什么都没错过。这就是路由器v4的反应方式。您定义完整的路线。可以使用的技巧是,您可以获取当前路径并将其添加到“嵌套路径”之前。