1
我希望我的導航組件能夠收聽到redux存儲庫,以便在用戶登錄時可以將登錄按鈕更改爲註銷按鈕,但導航組件無法訪問狀態未連接到Redux Store的React組件
我是新來的反應,請讓我知道如果我需要提供更多的信息
在app.jsx我:
ReactDOM.render(
<Provider store={store}>
<Router history={hashHistory}>
<Route path="/" component={Main}>
<IndexRoute component={Menu}/>
<Route path="about" component={About}/>
<Route path="item/:id" component={Item}/>
<Route path="login" component={Login}/>
</Route>
</Router>
</Provider>,
document.getElementById('app')
);
在主,我使孩子和導航因此:
var Main = (props) => {
return (
<div>
<Navigation/>
<div className="container">
{props.children}
</div>
</div>
);
}
在我所有的組件中,除了導航之外,我可以通過this.props訪問我的redux存儲/狀態。
當我登錄導航組件this.props我得到:
Object {dispatch: function}
但在Menu組件獲得:
Object {history: Object, location: Object, params: Object, route: Object, routeParams: Object…}
哇,哈哈。我的商店是正確的,我有它連接,但我沒有通過連接狀態。我認爲它不會將導航渲染爲兒童。感謝您捕捉我愚蠢的錯誤 –