![](/img/trans.png)
[英]Firebase createUserWithEmailAndPassword not authorizing user on sign in
[英]createUserWithEmailAndPassword VUEJS error updating user profile
我也在開發一個 firebase 應用程序有這個問題,我的目的是創建一個用戶並使用 firebase 方法 createUserWithEmailAndPassword 用一個名稱更新他的個人資料。 我改進了這個過程,最終它起作用了,但也拋出了一個錯誤,上面寫着:
未捕獲的類型錯誤:無法讀取未定義的屬性用戶
在 eval (index.js?xxxx)
在例如(auth.esm.js?xxx)
在 kc (auth.esm.js?xxxxx)
在 gc (auth.esm.js?xxxxxx)
在 BkZb (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”。 關於我缺少什么的任何建議? 提前致謝!!
https://firebase.google.com/docs/reference/js/firebase.User#updateprofile
Firebase 的user.updateProfile
方法返回一個 void 承諾,這意味着它返回一個沒有價值的承諾。
您仍然可以訪問then
user
變量,那么為什么不將其更改為
...
user
.updateProfile({
displayName: payload.name
})
.then(() => {
const User = {
id: user.uid,
email: user.email,
name:user.displayName
};
commit("settingUserIn", User);
commit("settingLoader", false);
});
...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.