【发布时间】:2021-05-31 13:34:06
【问题描述】:
我正在尝试侦听集合中新文档的创建,每当创建新文档时,我都需要执行以下操作:
- 从文档中获取 uid 和 posts 字段
- 如果帖子数大于或等于 6,则使用 uid 和其他数据在另一个集合中创建一个新文档。
这是我使用的代码不起作用,我不知道为什么。 老实说,我已经多次阅读有关 Promises 的文档,但并没有很好地理解它们:
exports.onPostAdded = functions.firestore
.document("Posts/{id}/Posts/{docId}")
.onCreate((snapshot, context) => {
const userId = context.params.id;
db.collection("Users").doc(userId)
.get().then((snap) => {
const data = snap.data();
const posts = data.posts;
const uid = data.uid;
if (posts<=6) {
db.collection("Showcases").add({
name: "Tokyo",
country: "Japan",
uid: uid,
});
}
})
.catch((err) => {
console.error(err);
});
});
老实说,我不知道何时何地返回 Promise。
【问题讨论】:
标签: node.js promise google-cloud-functions