我有一个简单的实时firebase db,具有以下结构
通知:
- 100000
- 信息:"这是我的info0"
- 100001
- 信息:"这是我的信息1"
- 100002
- 信息:"这是我的信息2"
我需要阅读最后一个孩子中的信息,并在index.js
中具有此功能const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);
exports.helloWorld =
functions.database.ref('/notification').onWrite((snapshot, context) => {
const myData = context.info;
console.log('data: '+myData);
});
但是控制台日志给我一个错误:
helloworld函数返回未定义的,预期的承诺或价值
我希望进入控制台:数据:这是我的Info2
我的代码中有什么问题?
谢谢!
更新:
要阅读我需要更改的最后值
const mydata = context.info;
to:
const mydata = snapshot.after.val((;
您需要在触发功能中返回某些内容。null
是可以接受的。如果您想在创建的情况下拿到最后一个孩子,请使用onCreate
代替onWrite
。文档说:
oncreate((,它在实时数据库中创建新数据时会触发。
您可能想检查此示例:示例
我需要从:
更改const mydata = context.info;
to:
const mydata = snapshot.after.val((;
然后我得到最后一个项目值。