Firestore Cloud功能优先级
现在我在Firestore数据库中部署了两个云功能。
它们由相同的文档更改触发。
是否可以指定功能的执行顺序或触发顺序?例如,我想让updateCommentNum函数触发拳头,然后触发writeUserLog函数。我怎么能实现这个目标呢?
exports.updateCommentNum = functions.firestore
.document('post/{postId}/comments/{commentsID}')
.onWrite((change, context) =>
{
//update the comment numbers in the post/{postId}/
}
exports.writeUserLog = functions.firestore
.document('post/{postId}/comments/{commentsID}')
.onWrite((change, context) =>
{
//write the comment name,text,ID,timestamp etc. in the collection "commentlog"
}
答案 0 :(得分:3)
无法指示功能之间的相对优先级。
如果您有一个定义的订单,您希望它们被调用,请使用单个Cloud Function并从那里调用两个常规函数:
exports.onCommentWritten = functions.firestore
.document('post/{postId}/comments/{commentsID}')
.onWrite((change, context) => {
return Promise.all([
updateCommentNum,
writeUserLog
])
})
function updateCommentNum(change, context) {
//update the comment numbers in the post/{postId}/
}
function writeUserLog(change, context) {
//write the comment name,text,ID,timestamp etc. in the collection "commentlog"
}
这也将减少调用次数,从而降低操作成本。