小编not*_*dar的帖子

Firebase TypeError:无法读取未定义的属性"val"

我已经尝试过Firebase云功能来发送通知.我的项目结构 数据库结构

这是index.js,

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

exports.pushNotification = functions.database.ref('/messages').onWrite( event => {
console.log('Push notification event triggered');

    const message = event.data.val();
    const user = event.data.val();
    console.log(message);
    console.log(user);

    const topic = "myTopic";
    const payload = {
        "data": {
            "title": "New Message from " + user,
            "detail":message,
        }
    };

    return admin.messaging().sendToTopic(topic, payload);
   });
Run Code Online (Sandbox Code Playgroud)

上面的代码配置错误,当我在Node.js中部署时,LOG函数显示:

"TypeError:无法读取未定义的属性'val'".

实际上我正在尝试做什么:我正在尝试将快照加载中的信息提取到index.js中,以便在将新子项添加到实时数据库时,它应该触发带有标题和正文的通知负载.

在Android中,我使用子监听器,在添加新记录时进行监听

FirebaseDatabase.getInstance().getReference().child("messages")

 OnChildAdded(.....){
 if (dataSnapshot != null) {
                    MessageModel messageModel = dataSnapshot.getValue(MessageModel.class);
                    if (messageModel != null) {
                            // do whatever
                           }
                   } …
Run Code Online (Sandbox Code Playgroud)

javascript node.js firebase firebase-realtime-database google-cloud-functions

11
推荐指数
1
解决办法
9455
查看次数