反应路由器 v4 关于如何将两个 url 与一个路由和一个组件匹配

react router v4 about how to match two url with one route and one component

对不起,我的英语不够好。

版本

4.1.1 我想用一条路线和一个组件匹配两个 url。 如下所示:

http://host:port/test/orders/id-1 http://host:port/test/products/id-1 Route的路径怎么写?

谢谢。

您可以利用url path parameters来指定匹配同一路由的多个路径。

在你的情况下,路线看起来像

<Route path = "/test/:param/id-1" component={MyComponent}/>

如果您只想匹配 /orders/ids-1/products/id-1,那么您可以在路径参数中使用正则表达式。 react-router 使用 path-to-regexp 理解的路径,

它的相关文档在react-router documentation

所以你可以使用

  <Route path = "/test/(orders|products)/id-1" component={MyComponent}/>