使用反应路由器v4匹配多个路径

syl*_*ain 9 reactjs react-router

鉴于我有2个路径呈现相同的组件,我如何避免重复这样的路由配置:

<Route path="/path1" component={MyComp} />
<Route path="/path2" component={MyComp} />
Run Code Online (Sandbox Code Playgroud)

syl*_*ain 15

到目前为止我找到的最佳解决方案(但似乎有点奇怪):

<Route path="/:path(path1|path2)" component={MyComp} />
Run Code Online (Sandbox Code Playgroud)

  • 为什么不只做`path ="/(path1 | path2)"`? (5认同)

Vig*_*ran 12

<Route path={["/common-one", "/common-two"]} component={Common} />
Run Code Online (Sandbox Code Playgroud)

对于以上版本 5 https://reactrouter.com/web/api/Route


小智 6

很好的答案.这也有助于以下场景:

<Route path="/path/path1" component={MyComp} />
<Route path="/path/:subpath(path2|path3)" component={MyAnotherComp} />
Run Code Online (Sandbox Code Playgroud)

没有(path2|path3)两个组件MyComp,MyAnotherComp如果路径是安装的话/path/path2.

PS.本来会添加评论,但不符合条件:).