【发布时间】:2021-05-25 18:57:13
【问题描述】:
当我通过 firebase 密码身份验证创建新用户时,我正在尝试使用用户信息更新我的 firebase 实时数据库。成功登录后,我将转到另一个页面。问题是我的数据库在上述情况下没有得到更新,但是如果留在登录页面并且不更改为任何其他 url;数据库已更新。
这是我的创建用户代码
firebase
.auth()
.createUserWithEmailAndPassword(email, password)
.then((userCredential) => {
// Signed in
var user = userCredential.user;
if (user !== null) {
const db = firebase.database();
db.ref("/").set({
uid: user.uid,
});
}
// ...
})
.catch((error) => {
var errorCode = error.code;
var errorMessage = error.message;
console.log(errorCode, errorMessage);
// ..
});
这里是我要切换到另一个页面的地方,
firebase.auth().onAuthStateChanged((user) => {
if (user) {
// User is signed in, see docs for a list of available properties
// https://firebase.google.com/docs/reference/js/firebase.User
var uid = user.uid;
console.log(user);
//If I remove the below line, database is updated
window.location.href = "../html/home.html";
// ...
} else {
// User is signed out
// ...
console.log("not logged in");
}
});
【问题讨论】:
标签: javascript firebase firebase-realtime-database firebase-authentication