我的云功能存在问题,我的所有数据库事件都返回空。例如,在以下事件中,event.data.val()将返回null。我正在进行更新操作,并通过使用shell以及部署后测试云功能来测试更新。
export const createSubscription = functions.database.ref('/users/{userId}/subscription').onWrite( event => {
if(!event.data.val()) {
return;
}
});
但是我可以轻松地挂接到如下所示的auth.user()事件并接收数据。
export const createStripeUser = functions.auth.user().onCreate(event => {
const user = event.data;
});
编辑:将数据传递到集合中,例如模拟器控制台上的下一个
createSubscription({
testKey: 'testValue'
})
从我的前端或以下内容
db.ref(`/users/23213213213/subscription`).update({ testKey: 'testValue'});
将在函数上返回null。
答案 0 :(得分:0)
使用.onWrite(),您需要像下面的示例一样传入前后。
如果我这样做,你可能会被卡住。请注意,我在最终JSON之前和之后都有一个大括号。没有它们,它没有正常工作。
addComment({before:{" comment":"在评论","角色":" guest"},之后:{ "评论":"评论","角色":"访客"}})
希望我的示例比通用字符串参数更有帮助。
祝你好运!