我只是删除一个以/ users / {some-userid}
为根的用户这是我的代码:
const functions = require('firebase-functions');
const admin = require('firebase-admin');
var adminApp = admin.initializeApp(functions.config().firebase);
exports.userRoleChange = functions.database.ref('/users/{uid}/role').onWrite(event => {
const parentRef = event.data.ref.parent;
return parentRef.once('value').then(function (snapshot) {
if (snapshot) {
console.log(snapshot.val());
}
});
});
这是日志
我可以从日志中看到另一个有趣的事情是它被触发两次。
我认为获得两次触发很好,因为它被重新创建,所以一次删除,一次创建,但我不明白为什么它会在第一时间重新创建。
函数允许您在两个特定级别处理数据库事件; 您可以专门监听创建,更新或删除 事件,或者您可以倾听任何类型的路径变化。云 函数支持实时数据库的这些事件处理程序:
onWrite(),在创建,销毁或更改数据时触发 在实时数据库中。
onCreate(),在新数据发生时触发 在实时数据库中创建。
onUpdate(),它在数据时触发 在实时数据库中更新。
onDelete(),触发时间 数据将从实时数据库中删除。