查询字符串与反应路由器路由不匹配的URL

时间:2016-09-27 15:02:30

标签: javascript reactjs react-router

鉴于此React路由器配置:

<Router history={browserHistory}>
    <Route path="/farm/:type?period=:period" component={Farm} />
    <Route path="/pen/:penId" component={Pen} />
    <Route path="/pen/:penId/cow/:cowId" component={Cow} />
    <Route path="*" component={Farm} />
</Router>

为什么http://localhost:8080/farm/average?period=day只匹配catch-all路由而不匹配第一个?

1 个答案:

答案 0 :(得分:2)

查询字符串参数不需要包含在<Route>定义中。

将路线定义更改为<Route path="/farm/:type" component={Farm} /> 解决了这个问题。

查询字符串参数仍在props.location.query

下可用