Javascript createUserWithEmailAndPassword VUEJS更新用户配置文件时出错
我也在开发一个firebase应用程序,我的目的是创建一个用户,并使用firebase方法createUserWithEmailAndPassword更新他的个人资料。 我改进了这个过程,最终它成功了,但也抛出了一个错误,它说: 未捕获类型错误:无法读取未定义用户的属性Javascript createUserWithEmailAndPassword VUEJS更新用户配置文件时出错,javascript,firebase,vue.js,authentication,vuex,Javascript,Firebase,Vue.js,Authentication,Vuex,我也在开发一个firebase应用程序,我的目的是创建一个用户,并使用firebase方法createUserWithEmailAndPassword更新他的个人资料。 我改进了这个过程,最终它成功了,但也抛出了一个错误,它说: 未捕获类型错误:无法读取未定义用户的属性 评估时(索引js?xxxx) 例如(auth.esm.js?xxx) 在kc(auth.esm.js?xxxxx) 在gc上(auth.esm.js?xxxxxx) 在B.k.Zb(auth.esm.js?xxxxxx) 在Qb
评估时(索引js?xxxx)
例如(auth.esm.js?xxx)
在kc(auth.esm.js?xxxxx)
在gc上(auth.esm.js?xxxxxx)
在B.k.Zb(auth.esm.js?xxxxxx)
在Qb(auth.esm.js?xxxx) 尽管已经修改了用户信息,但我需要刷新页面以使此错误消失。 下面是我的部分代码:
signUserUp({ commit }, payload) {
commit("settingLoader", true);
firebase
.auth()
.createUserWithEmailAndPassword(payload.email, payload.password)
.then(() => {
let user = firebase.auth().currentUser;
console.log(user);
user
.updateProfile({
displayName: payload.name
})
.then(usermod => {
const User = {
id:usermod.user.uid, undefined usermod
email:usermod.user.email, undefined usermod
name:usermod.user.displayName undefined usermod
};
commit("settingUserIn", User);
commit("settingLoader", false);
});
})
.catch(error => {
console.log(error);
commit("settingLoader", false);
});
}
然后,错误确实引用了user.uid、user.displayName和user.email的最终未定义的“usermod”。
对我遗漏的东西有什么建议吗?
提前谢谢
Firebase的user.updateProfile
方法返回一个无效的承诺,这意味着它返回一个没有值的承诺
您仍然可以访问中的用户
变量,那么
,为什么不将其更改为
。。。
用户
.updateProfile({
显示名称:payload.name
})
.然后(()=>{
常量用户={
id:user.uid,
电子邮件:user.email,
名称:user.displayName
};
提交(“settingUserIn”,用户);
提交(“settingLoader”,false);
});
...