我试图在 foreach 循环中从 API 请求数据并将该数据推送到一个数组,然后在最后返回该数组。这是我的代码:
db
.collection('posts')
.orderBy('createdAt', 'desc')
.limit(10)
.get()
.then((data) => {
let posts = [];
data.forEach((doc) => {
db
.doc(`/users/${doc.data().userHandle}`)
.get()
.then((userDoc) => {
posts.push({
postId: doc.data().id,
userHandle: doc.data().userHandle,
userImageUrl: userDoc.data().imageUrl,
imageUrl: doc.data().imageUrl,
});
})
})
return res.json(posts);
})
.catch((err) => {
console.error(err);
res.status(500).json({ error: err.code});
});
由此,posts 数组返回空数组或对象,即使我将 return res.json(posts) 替换为
.then(() => {
return res.json(posts);
})
任何帮助都很棒!!!
蛊毒传说
相关分类