1
我正在尋找一種方式,當用戶授權時,我存儲user authorized status
所以我每次都可以檢查用戶是否是authorized
。然而,當我執行下面的代碼未授權用戶:(Master.jsx - >渲染())存儲用戶的反應授權
<Route exact path="/" render={() => {
console.log('this.props.authed: ', this.props.authed, "this.props: ", this.props)
return (
this.props.authed
? <Home />
: <Redirect from="/" to="/login"/>
)}
}/>
我通過firebase
在componentWillMount()
檢查用戶授權和存儲它下面的代碼:(Master.jsx - > componentWillMount())
componentWillMount =() => {
firebaseAuth().onAuthStateChanged((user) => {
if (user) {
this.props.login(user)
} else {
this.props.logout()
}
})
}
的問題是,將後<Route ..
所以用戶將被routing
後授權componentWillMount
將被執行。我有什麼辦法解決它?
如果您看到我的問題,問題是我的存儲處理器將在調用react-router後執行。因此,在我將用戶數據存儲在用戶被授權'react-router'重定向到另一頁的redux商店之前! –