0

Я работаю с Firebase и AngularJS, и мне нужно удалить случайный сгенерированный идентификатор в базе данных реального времени.Как удалить данные из Firebase?

var todoFirebaseID; 
//add Firebase 
$scope.addFirebase = function() { 
    var objects = { 
     title: objectTitle.value, 
     content: objectContent.value 
    } 

    var list = $firebaseArray(storageRef); 
    list.$add(objects).then(function(storageRef) { 
     todoFirebaseID = storageRef.key; 

     $scope.addTodo(); 
    }); 
} 
// Remove Firebase 
$scope.removeFirebase = function() { 
    var obj = $firebaseObject(storageRef); 
    obj.$remove().then(function() { 

    }); 
} 

Я пробовал, но удаляет все данные в Firebase. Мне нужно удалить только выбранные данные.

Кто-нибудь знает, как это сделать?

ответ

0

Вы сообщаете Firebase об удалении всей базы данных, так что это именно то, что она делает. Если вы хотите удалить только один элемент, вы должны вызывать $remove() по этому конкретному элементу.

Единственный способ, которым я могу видеть удаление элемента из кода, который вы разделяемый:

$scope.removeFirebase = function() { 
    var obj = $firebaseObject(storageRef.child(todoFirebaseID)); 
    obj.$remove(); 
} 

Так что мы передаем в ссылке на пункт todoFirebaseID ребенка.

В более реалистичном приложении вы вызываете обработчик, когда пользователь нажимает кнопку удаления, а затем этот обработчик будет определять идентификатор элемента, на который пользователь нажал.

Смежные вопросы