【发布时间】:2020-08-24 22:18:46
【问题描述】:
我使用 dart 和 firebase 后端设计了一个颤振应用程序。我希望在用户创建、删除、 或更新 数据库中的任何内容时触发。我了解 onCreate、onRemoved、 和 onUpdate 方法。 我在firebase云函数中写了一段javascript代码。我需要在触发发生时发送通知。我不想使用 3 个不同的触发器。我只想使用 onWrite 触发器。
这是我的数据库。
有四个部门,分别称为comp、civil、lect、和mech。我想在单个 onWrite 触发器中发生数据库更改时触发!
我的第一个问题是,我想从 onWrite 触发器中区分它是 创建、删除还是更新。我知道它将触发所有 3 个事件。但是如何区分呢?
这是我的 onCreate 代码...
exports.noticeAddedComp = functions.database.ref('main/notices/comp/{id}').onCreate( async evt => {
var token = ['dxnfr3dq6_Y:APA91bHavtoP62l296qzVoBhzQJbMFA']
const payload = {
notification:{
title : 'Message from Cloud',
body : 'This is your body',
sound : 'default'
},
data:{
message : 'Thi is new Push',
click_action : 'FLUTTER_NOTIFICATION_CLICK',
}
};
await admin.messaging().sendToDevice(token,payload);
});
上面的代码正在运行。但它是针对 onCreate 的。
我的第二个问题是,我需要为四个部门写四个 onWrite 触发代码吗?
【问题讨论】:
标签: firebase flutter firebase-realtime-database dart google-cloud-functions