2017-02-20 147 views
0

我正在使用Firebase和AngularJS,我需要在實時數據庫中刪除隨機生成的ID。如何刪除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子項的引用。

在一個更現實的應用程序中,當用戶單擊刪除按鈕時會觸發一個處理程序,然後該處理程序會找出用戶點擊的項目的ID。