我目前有一个单页面应用程序,用于登录用户,登录后应重新呈现到相应页面。在开发工具上,我看到状态发生变化,但是我必须手动刷新页面。在看到当前用户的基础上重新渲染页面。如果有当前用户,则应返回其他组件。这是下面的代码片段。
到目前为止,我已经仔细检查以确保我的减速器没有改变状态,并且实际上返回了正确的newState。我的状态也已正确归一化,下面的组件正在正确地观察变化的状态。
class Greeting extends React.Component {
constructor(props) {
super(props)
debugger
}
render () {
debugger
const sessionLinks = () => (
<div className="login-signup">
<div className="navhead">
<div className="butterflyr">butterflyr</div>
<img className="butterfree" src={window.butterFree}/>
<Route exact path="/" component={LogInFormContainer}/>
</div>
<SignUpFormContainer/>
</div>
);
const homePage = () => (
<hgroup className="header-group">
<NavBar currentUser={this.props.currentUser} logout={this.props.logout}></NavBar>
<Route exact path="/" component={ForFun}/>
</hgroup>
)
return (
<div>{this.props.currentUser ? homePage() : sessionLinks()}</div>
)
}
}