2016-09-27 122 views
1

鑑於這一陣營路由器配置:URL查詢字符串不匹配反應路由器的路由

<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僅符合包羅萬象的路線,而不是第一個?

回答

2

查詢字符串參數不需要包含在<Route>定義中。

將路由定義更改爲<Route path="/farm/:type" component={Farm} /> 解決了該問題。

查詢字符串參數仍然可用props.location.query