【问题标题】:React redirect when promise resolved?承诺解决时反应重定向?
【发布时间】:2020-05-21 22:12:32
【问题描述】:

我有一个使用反应路由器的反应项目。当一个承诺被这样解决时,我想重定向到另一个页面:

  handleSubmit (event) {
    event.preventDefault();

    login(this.state.email, this.state.password).then(response => {

      return <Link to="/new_page"/>
    }).catch(err => {
        return "nothing";
    });
  }

理论上,当成功创建响应时,它应该重定向到“new_page”。然而在实践中什么都没有发生。有没有办法做到这一点?
谢谢!

【问题讨论】:

  • 你在使用react-router吗?
  • @PaulFitzgerald 是的!

标签: reactjs react-router


【解决方案1】:

您可以使用history.push

handleSubmit (event) {
  event.preventDefault();
  login(this.state.email, this.state.password).then(response => {
    history.push('/new_page')
  }).catch(err => {
      return "nothing";
  });
}

【讨论】:

    【解决方案2】:

    你必须使用

    <Redirect to="/new_page"/>
    

    或类似的东西

    history.push("/new_page")
    

    【讨论】:

      猜你喜欢
      • 2016-08-03
      • 2015-06-24
      • 2019-08-01
      • 1970-01-01
      • 2019-09-29
      • 2021-08-28
      • 1970-01-01
      • 2019-01-30
      • 2018-03-18
      相关资源
      最近更新 更多