我正在尝试从我的 Firestore 数据库获取数据,但我无法正确执行此操作。我的问题是 console.log(allData.length) 总是打印 0,因为我猜它超过了代码的异步部分,但我无法弄清楚以某种方式使“userDataSnapshot.docs.map”也异步。关于如何正确执行此操作有什么建议吗?      const allData = [];      const userDataSnapshot = await db.collection("userdata").get();      userDataSnapshot.docs.map(async (doc) => {        var userObject = [];        userObject.push(doc.id);        var snapshot = await doc.ref.collection("advanceddata").get();        snapshot.docs.map((doc) => {          userObject.push(doc.data());        });        allData.push(userObject);      });      console.log(allData.length);
                    
                    
                1 回答
                            萧十郎
                            
                                
                            
                        
                        
                                                
                    TA贡献1815条经验 获得超13个赞
我相信这会有所帮助:
const allData = [];
const userDataSnapshot = await db.collection("userdata").get();
for(const doc of userDataSnapshot.docs) {
var userObject = [];
userObject.push(doc.id);
var snapshot = await doc.ref.collection("advanceddata").get();
snapshot.docs.map((doc) => {
userObject.push(doc.data());
});
allData.push(userObject);
}
console.log(allData.length);
添加回答
举报
0/150
	提交
		取消
	