我正在尝试创建一个匹配以下所有网址的路由:
/product/foo
/product/foo/bar
这是我目前的路线:
<Route path="/product/:productName(/:urlID)" handler={SomeHandler} />
根据https://github.com/rackt/react-router/blob/master/docs/guides/basics/RouteMatching.md上的文档,此路线应完全匹配,但与上述任何一个网址都不匹配。
我需要做些什么来支持这个可选参数?
我在React Router版本0.13.3上,如果我删除了(/:urlID)
,那么我可以匹配第一个网址而不是第二个网址。
答案 0 :(得分:7)
好的,所以()语法特定于React Router 1.0,而不是0.13.3。我最终使用了?语法:
<Route path="/product/:productName/?:urlID?" handler={SomeHandler} />