我正在尝试分配bm_array给我的 firestore 数组(如果存在,则为空数组)。逻辑是检查名称为当前用户 firebase uid 的 firestore 文档。我能够 console.log 我的预期数组(第 12 行),但是在实际数组分配给之前bm_array返回(第 25 行) 。我尝试使用异步,但 bm_array 要么返回一个 promise 对象,要么返回 null。我不确定如何使用异步。nullbm_array
var bm_array = null;
const getBookmarks = async() => {
var firestore = firebase.firestore();
var userBookmarks = firestore.collection("userBookmarks");
await firebase.auth().onAuthStateChanged(async function(user) {
if (user) {
// User is signed in.
var user = firebase.auth().currentUser;
await userBookmarks.doc(user.uid).get().then(async function(doc){
if (doc.exists){
bm_array = await doc.data().countries;
console.log(bm_array);
}else{
bm_array = [];
}
}).catch(function(error) {
console.log("Error getting document:", error);
});
} else {
return []
}
});
}
getBookmarks();
console.log(bm_array);
至尊宝的传说
相关分类