В следующем коде после обработки данных, возвращенных в моментальном снимке, я хочу удалить эту запись. Когда я вызываю remove по моей ссылке с ключом записи, добавленной через дочерний метод, все родительские узлы удаляются до корня приложения FB. Я подозреваю, что это ошибка в моем коде. Буду признателен за любую помощь, которая может быть оказана.Firebase call .remove() on ref удаляет всех родителей
var Firebase = require('firebase');
var config = require('./config.json');
var fbRef = new Firebase(config.firebaseEndpoint + "/messages");
var messenger = require('./messenger.js');
fbRef.on('value', function (snap) {
//If Data is returned convert payload to array.
//pass each mesaage into messenger and upon completion delete the
// firebase record
if (snap.exists()) {
var payload = snap.val();
var keys = Object.keys(payload);
keys.forEach(function (key) {
var msg = payload[key];
messenger(msg, function (msgErr, msgData) {
if (!msgErr) {
fbRef.child(key).remove();
}
else {
console.log(msgErr);
}
});
});
}
});
Frank спасибо за это. Вы определили пробел в моих знаниях, поскольку я не понимал, что путь удален вместе с последним ребенком. Кроме того, спасибо, что указали на forEach на привязку. Я пропустил это в API, и это спасет меня некоторое время, продвигаясь вперед. –