首页 > 解决方案 > Firebase 函数 - 未调用函数

问题描述

我创建了以下功能:

它已经部署并且存在于firebase主机上,但它从来没有被调用(使用率为0)......

它应该在用户文档更改时调用,然后如果字段尚未为空,则将其更新为空。

谁能看到为什么这没有运行?

exports.deleteField = functions.database.ref('/Users/{userID}')
  .onUpdate((change, context) => {
    const overrideTag = change.after.data().overrideTag
    if (overrideTag !== null) {
      const db = admin.firestore()
      db.collection('Users').doc(userID).set({ overrideTag: null })
    }
  })

亲切的问候,乔希

标签: firebasegoogle-cloud-functions

解决方案


您的函数配置为触发实时数据库中名为“用户”的节点的更改。实时数据库没有“文档”。但是,Firestore 确实有文档。如果您打算在 Firestore 中更改文档时触发,则必须改为编写Firestore 触发器。它将使用functions.firestore而不是functions.database.


推荐阅读