为什么在获取数据后重新加载我的React App?

时间:2019-04-22 07:09:52

标签: javascript reactjs fetch

获取用户电子邮件和密码并获得进入权限后,应用程序将转到用户个人资料页面,然后再次登录表单。 那是在我添加.then(data => ...)时发生的。另一个问题是我正在使用POST方法,但是在首次登录后,我可以在URL中看到电子邮件和密码,并且在再次登录表单后仍会保留在该位置。再说一次,如果我删除.then(data => ...),一切都可以通过POST方法正常工作。

onSubmitSignIn = () => {
        fetch('http://localhost:3000/signin', {
            method: 'post',
            headers: {'Content-Type': 'application/json'},
            body: JSON.stringify({
            email: this.state.signInEmail,
            password: this.state.signInPassword 
            })
        })
        .then(response => response.json())
        .then(data => {
               if (data === 'success') {
                   this.props.onRouteChange('home');
               }
        });
    };

此功能用于“登录”按钮。 .onRouteChange('home')仅显示应用程序应显示哪些组件。

1 个答案:

答案 0 :(得分:0)

您没有提供全部信息,但是我可以帮助提交的一件事是停止表单的默认行为:

onSubmitSignIn = (event) => {
  // ...
  event.preventDefault();
}

先尝试一下,然后再处理其他事情。