为什么需要硬刷新以使ui重新呈现?奇怪的问题

时间:2019-06-14 10:38:58

标签: reactjs heroku web-deployment

我有一个可以在开发中顺利且良好地运行的应用程序,但是当我将其部署到Heroku标头组件上时,它不会重新呈现自身,而更奇怪的部分是,它需要硬刷新才能更改ui,还请考虑: 1.在开发人员工具中,缓存已被禁用。 2.还在生命周期和onClick()中使用forceUpdate()。 3. cookie清除工作正常。 谢谢你的帮助。

  componentDidMount() {
    this.forceUpdate();
  }
  forceUpdateHandler = () => {
    this.forceUpdate(this.props.auth);
  };
  renderContent(){
    switch (this.props.auth) {
      case null:
        return; 
      case false:
        return (
          <div>
            <a href="/auth/google" onClick={this.forceUpdateHandler}>Login with Google</a>
          </div>
        );
      default:
        return [
          <span key="1">
            <Payments/>
          </span>,
          <span key="3">
            Credits {this.props.auth.credits}
          </span>,
          <span key="2">
            <a href="/api/logout" onClick={this.forceUpdateHandler}>Logout</a>
          </span>,
        ];
    }
  }  
  render() {
    return (
      <nav>
          <Link to={this.props.auth ? '/surveys' : '/'}>APPNAMEHERE</Link>
          <div>
            {this.renderContent()}
          </div>
      </nav>
    );
  }
}
const mapStateToProps = ({ auth }) => { return { auth }};

export default connect(mapStateToProps)(Header);

0 个答案:

没有答案