首页 > 解决方案 > 嵌套 React Router 路径到 n 级

问题描述

我有一个名为的组件<TaskView>,它呈现有关特定任务的一些信息。我的任务是嵌套的,这样我就可以像这样那样导航/task1/task1-1/task1-1-1... N(无限期地)。
我应该如何编写可以解析此 url 的路径?
要为嵌套的 1 级编写路径,我会这样做:<Route path="/task/:p1" component={taskView} />对于 2 级,我会这样做<Route path="/task/:p1/:p2" component={taskView} /> 我不知道任务结构有多深,那么我将如何为未定义数量的参数编写路径?

标签: reactjsreact-router

解决方案


ReactRouter 有一个非精确匹配的概念。它将尝试找到最佳匹配,因此您无需定义所有这些子路由来安装相同的组件。

React : <Route exact path="/" /> 和 <Route path="/" /> 的区别

所以实际上你应该能够做到

<Route path="/task/:p1" component={taskView} />

正好。


推荐阅读