我正在尝试从Firebase云功能向Firestore添加文档,但是它不起作用。这就是我正在做的:
import * as admin from "firebase-admin"
import * as functions from "firebase-functions"
admin.initializeApp()
exports.findDeck = functions.https.onCall((data: { deckId: string }) => {
admin.firestore().collection("messages").add({original: "for me"})
return requestDeck.findDeck(data.deckId)
})
似乎应该足够简单。我在这里跟随一个例子:
我还尝试遵循Node.js的firestore文档,并使用set
代替add
。它什么都不做,或者似乎报告一个错误。
答案 0 :(得分:0)
将文档添加到Cloud Firestore是异步操作。正如您现在所写,函数很有可能在将文档添加到Firestore之前被其容器终止。
要在完成代码后正确向Cloud Functions发出信号,请确保将异步操作中的所有promise链接起来:
exports.findDeck = functions.https.onCall((data: { deckId: string }) => {
return admin.firestore().collection("messages").add({original: "for me"})
.then(() => {
return requestDeck.findDeck(data.deckId)
});
})