Firebase Cloud Functions 数据库触发器“onCreate 不是函数”

Posted

技术标签:

【中文标题】Firebase Cloud Functions 数据库触发器“onCreate 不是函数”【英文标题】:Firebase Cloud Functions Database Trigger 'onCreate is not a function' 【发布时间】:2017-12-13 05:42:48 【问题描述】:

为了提高效率,我想使用 onCreate 方法而不是 onWrite 但我遇到了这个错误:

functions.database.ref(...).onCreate 不是函数

但是,文档https://firebase.google.com/docs/reference/functions/functions.database.RefBuilder#onCreate 中似乎提到了一个功能 我的代码开头如下:

const functions = require('firebase-functions');

const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);

exports.manager = functions.database.ref('some_ref')
    .onCreate(event =>

我期待您的帮助。提前致谢。

【问题讨论】:

完整的代码 sn-p 将更有效地理解全图。没有它,我猜你忘了需要函数包? onCreate() 是最近几天发布的新功能。我猜您的构建配置中的某些内容需要更新,但我不知道它是什么。 是的,我刚刚看到它是 2 天前发布的,所以我最好更新一下 从您的函数文件夹中运行npm upgrade 以升级您的节点模块。您需要至少 0.5.9 版本的 firebase-functions。 【参考方案1】:

更新:在对该问题的评论中,Firebaser Doug Stevenson 表示在项目的函数文件夹中运行 npm upgrade 是更新到最新版本的更简单方法。


我没有找到任何有关如何更新到最新版本 firebase-functions 的文档。在general guidelines described here之后,进入你项目的functions目录并输入这个命令:

npm install --save firebase-functions

然后您可以查看package.json 文件以查看已安装的版本。包含新触发器的firebase-functions 的new version 是0.5.9

【讨论】:

以上是关于Firebase Cloud Functions 数据库触发器“onCreate 不是函数”的主要内容,如果未能解决你的问题,请参考以下文章

在 iOS 中为 Firebase 使用 Cloud Functions

Cloud Functions for Firebase 超时

Firebase Cloud Functions https.onCall 完成状态码:204

Cloud Functions for Firebase onWrite 超时

Easy Firebase Cloud Functions 组织

在 Firebase Cloud Functions 中创建 PDF