【发布时间】:2017-12-30 22:43:05
【问题描述】:
感谢 Firebase 的 Frank 提供的helping me with this code。我只是在将文档 ID 推送到 Friends 集合下时遇到了这个问题。我不确定在下面的代码中将const friendId 和const accepted 推送到friendsList 数组的最佳方法是什么。
const db = admin.firestore();
const friendRef =
db.collection('users').doc(id).collection('friends');
friendRef.get().then((onSnapshot) => {
var promises = [];
onSnapshot.forEach((friend) => {
const personId = String(friend.data().person_id);
const friendId = String(friend.id);
const accepted = friend.data().accepted;
promises.push(db.collection('users').doc(personId).get());
});
Promise.all(promises).then((snapshots) => {
friendsList = [];
snapshots.forEach((result) => {
friendsList.push({
friendId: friendId,
accepted: accepted,
firstName: result.data().name.first,
lastName: result.data().name.last,
});
});
res.send(friendsList);
});
}).catch((e) => {
res.send({
'error': e
});
})
我尝试了一些方法,但没有成功。任何帮助将不胜感激。
【问题讨论】:
-
究竟是什么不起作用?你在哪里定义
friendsList数组?在您编写friendId: friendId的代码部分中,变量friendId未定义。他们留在onSnapshot.forEach的块中
标签: javascript firebase google-cloud-functions google-cloud-firestore