开发者问题收集

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

2019-04-22
2287

获取用户电子邮件和密码并获得进入权限后,应用程序转到用户个人资料页面,然后再次转到登录表单。 当我添加 .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个回答

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

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

先尝试一下,然后再考虑其他事情。

Pho Huynh
2019-04-22