在“我的应用”中,用户可以用自己的电子邮件地址和密码注册(都是Firebase),默认情况下,用户不会有自己的密码
displayName
和
photoURL
设置是否使用电子邮件/密码注册。这就是为什么我试图在他们提交注册表格的那一刻通过添加这两个字段来更新他们的个人资料。
显示名称
还有照片(
)但是,即使我设置了这些字段,主页也不会及时获取这些字段,我总是要刷新页面以显示这些详细信息。
我能帮点忙吗\
onSubmit = event => {
const { displayName, photoURL, email, passwordOne } = this.state;
const { history } = this.props; /* eslint-disable-line */
authFunctions
.doCreateUserWithEmailAndPassword(email, passwordOne)
.then(session => {
auth.currentUser.updateProfile({
displayName,
photoURL
});
db.doCreateUser(session.user.uid, displayName, photoURL, email)
.then(() => {
this.setState({ ...INITIAL_STATE });
history.push(routes.HOME);
})
.catch(error => {
this.setState(byPropKey('error', error));
});
})
.catch(error => {
this.setState(byPropKey('error', error));
});
event.preventDefault();
};
正如您在我的代码中看到的,我正在Firebase上创建用户,然后将它们添加到数据库中。我试图更新配置文件后,我创建了实际的用户,但由于某些原因,它没有拿起它。