2016-02-17 62 views
1

我正在使用react-redux-router。 我有以下代碼:如果路由發生變化,請更改React組件

<Router history={hashHistory}> 
    <Route path="/" component={App}> 
     <IndexRoute component={Home} /> 
     <Route path="/product/:id" component={Product} /> 
    </Route> 
</Router> 

我想在應用程序組件不同的數據顯示,當我的路線是「/」,當我的路線是「/產品/:ID」。如何跟蹤組件App中的路由更改。

回答

1

使用react-router-reduxsyncHistory中間件保存路由存儲。然後,您可以使用App組件中的connectstate.routing.location.pathname中讀取路徑名並將其推送到道具。

+0

謝謝,我有同樣的想法。並通過正則表達式檢查組件。 – kitoss

+0

更容易的是'state.routing.location.pathname.split(「/」)。indexOf(foo)> -1' 編輯:這是除非你想檢查號碼參數,當然...正則表達式將工作正常:) 如果我幫你,請考慮投票了:)謝謝 –

相關問題