我正在尝试从异步函数返回布尔值,但是以undefined
的形式出现。
checkIfEmptyDb = async => {
var ref = firebase.database().ref("dynamicDb");
ref.once("value").then(snapshot => {
const a = snapshot.exists();
console.log(a); // false
return a;
});
};
getRandomWordFromDb = async () => {
let moreWords = await this.checkIfEmptyDb();
console.log("moreWords", moreWords); //UNDEFINED
到目前为止,我的解决方案是在
checkIfEmptyDb
函数中设置react应用的状态,然后可以在getRandomWordFromDb
中调用它。提前致谢!
最佳答案
您需要返回承诺的价值:
checkIfEmptyDb = async => {
var ref = firebase.database().ref("dynamicDb");
return ref.once("value").then(snapshot => {
const a = snapshot.exists();
console.log(a); // false
return a;
});
};
关于javascript - 异步函数返回 undefined variable ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60914045/