在我的JavaScript学习之旅中,我遇到了一个复杂的问题,我花了24个多小时研究并尝试了几个已发布的解决方案,但不幸的是,我没有成功地解决我的问题。这促使我写这篇回复来解决这个复杂的问题!
class db{
async findOne(search){
try {
const doc = this.collection.doc(search).get();
return get.data()
} catch (error) {
console.error(Error(red(error)).message);
process.exit(1)
}
}
}
输出量
Promise { <pending> }
我真正想要的是在不使用then
的情况下完成输出,输出如下所示:
{
name:'Johan',
age:'15',
}
3条答案
按热度按时间2hh7jdfx1#
这个
this.collection.doc(search).get();
是同步的吗,我猜不是。所以
const doc = await this.collection.doc(search).get();
这将解决你问题。
aelbi1ox2#
你必须使用等待它等待在specifix行,直到它完成在这里,你去!!
polhcujo3#
如果你得到的是承诺数组,你可以使用
promise.All([Array of promises]);
来解析它们有关详细信息,请访问MMDN