节点不会从Firebase数据库中移除?

我有以下数据结构:

在这里输入图像说明

不幸的是,“天”不会从下面的代码中删除数据库。

我目前的代码:

const functions = require('firebase-functions'); const admin = require('firebase-admin'); admin.initializeApp(functions.config().firebase); exports.deleteOldItems = functions.database.ref('/path/to/items/{pushId}') //irrelevant to the question .onWrite(event => { var ref = event.data.ref.parent; // reference to the items var now = Date.now(); var cutoff = now - 2 * 60 * 60 * 1000; var oldItemsQuery = ref.orderByChild('timestamp').endAt(cutoff); return oldItemsQuery.once('value', function(snapshot) { // create a map with all children that need to be removed var updates = {}; snapshot.forEach(function(child) { updates[child.key] = null }); // execute all updates in one go and return the result to end the function return ref.update(updates); }).then(function() {; return functions.database.ref('/days').remove(); // /days doesn't get removed! }); }); 

你可以这样做:

 let updates = {}; updates['/days'] = null; firebase.database().ref().update(updates); 

请参阅文档中的“更新或删除数据”。

在你的代码中:

 .then(function() {; let updates = {}; updates['/days'] = null; return firebase.database().ref().update(updates) }); 

编辑:尝试这样的事情:

 const admin = require('firebase-admin'); admin.initializeApp(functions.config().firebase); const defaultDatabase = admin.database(); ... let updates = {}; updates['/days'] = null; defaultDatabase.ref().update(updates); 

参考: https : //firebase.google.com/docs/database/admin/start