这是在Firebase数据库中创建新消息时触发通知的函数的第一部分。
当我尝试从数据快照打印一个值时,我在控制台上得到以下输出。我是不是遗漏了什么?
fromId undefined
这是我的数据库结构:
"messages" : {
"-LJrd_EGOqbv0XqeNoJp" : {
"fromId" : "dBQd541pxlRypR7l1WT2utKVxdX3",
"message" : "hey ",
"timeStamp" : 1.534236972096062E9,
"toId" : "dBQd541pxlRypR7l1WT2utKVxdX2"
}
}
这是我的通知NewMessage Firebase云功能
exports.notifyNewMessage = functions.database.ref('/messages/{pushId}/{message}').onCreate((snap, context) => {
const messageSnap = snap.val();
const from_Id = messageSnap["fromId"];
console.log('fromId', from_Id);
});
您的代码现在正在message
属性上触发,因此它只能访问特定的值。
要访问新消息的所有属性,请触发更高一级:
exports.notifyNewMessage = functions.database.ref('/messages/{pushId}').onCreate((snap, context) => {
const messageSnap = snap.val();
const from_Id = messageSnap["fromId"];
console.log('fromId', from_Id);
const message = messageSnap.message; // you can also use . notation
console.log('message', message);
});