Firebase云功能已停止工作 - event.data undefined [英] Firebase cloud functions stopped working - event.data undefined

查看:199
本文介绍了Firebase云功能已停止工作 - event.data undefined的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一些云功能,但他们突然停止工作,现在我得到event.data undefined

I have some cloud functionsbut they suddenly stopped working, now I'm getting event.data undefined

exports.newMessageReceived = functions.database.ref('/messages/{pushId}')
 .onWrite((event) => {

    if (event.data.previous.exists() || !event.data.exists() ) {
        //Do nothing if data is edited or deleted
        console.log('Message edited or deleted - skip');
        return;
    }
   ...
}

我得

TypeError: Cannot read property 'previous' of undefined

这是如何定义这里。firebase云功能有什么变化吗?

This is how it is defined here. There was any change in firebase cloud functions?

推荐答案

云功能已更新到1.0版,你可以点击此处查看更多信息:

Cloud functions were updated to version 1.0, you can check here for more info:

https://firebase.google.com / docs / functions / beta-v1-diff#realtime-database

关于这个问题,您需要将代码更改为:

Regarding the question, you need to change the code into this:

exports.newMessageReceived = functions.database.ref('/messages/{pushId}').onWrite((change,context) => {

if (change.before.exists() || !change.after.exists() ) {
    //Do nothing if data is edited or deleted
    console.log('Message edited or deleted - skip');
    return;
  }

}

onWrite 现在有两个参数更改上下文更改在之前有,在属性之后有之前相当于之前

onWrite now has two parameters change and context. Change has before and after properties, and before is equivalent to previous

此外之前更改可以使用此处列出的方法:

Also change and before can use the methods listed here:

https://firebase.google.com/docs/reference/admin/node/admin .database.DataSnapshot

这篇关于Firebase云功能已停止工作 - event.data undefined的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆