我有一个文档组件,我希望我的urls看起来像这样:
url: myapp.com/docs
url: myapp.com/docs/document-1
url: myapp.com/docs/category-1/document-2
url: myapp.com/docs/category-1/category-2/document-2我在设置路线时很吃力。
我尝试了一些方法,包括:
<Route path="docs">
<IndexRoute component={Docs} />
<Route path=":path" component={Docs} />
</Route>这在myapp.com/docs/document-1上工作得很好,但在myapp.com/docs/category-1/document-2上却不能很好地工作,这意味着this.props.params.path在第一种情况下将返回document-1,但在第二种情况下会感到困惑。
我想得到myapp.com/docs之后的路径。例如,对于myapp.com/docs/category-1/category-2/document-2,我希望能够拾取/category-1/category-2/document-2。
你对如何做到这一点有什么想法吗?如果问题不够清楚,请告诉我。
注意:我无法控制url上的层数。
发布于 2017-06-16 08:47:59
这就是对我有效的方法。
<Route path="**/*" component={Docs} />为了捕捉到它:
this.props.params.splat 如果你想要完整的路径:
this.props.params.splat.join('/')https://stackoverflow.com/questions/44533691
复制相似问题