2016-08-01 12 views
0

私はionic + angular + firebaseアプリケーションを構築しています。 firebaseコレクションからノードを削除できません。私は配列から項目のリストを表示するHTMLビューを持っています(ng-repeatを使用して)。これが私の見解がどのように見えるかです:Firebase - ノードを削除

[email protected] : 23 
[email protected] : 784 

私は、ユーザーが、配列から項目を削除することができますし、これが今度は私のfirebaseコレクションからオブジェクトを削除する必要があります削除ボタンがあります。私は、クエリを使用して、特定のイベントIDを持つすべての請求書を取得することができています「[email protected]

Bill 
-KMhWUkwDFwlRvqv0kDG 
    bill: 23 
    email: "[email protected]" 
    eventid: **42539660** 

-KN0_OUYJf_XQJSLPgmi 
bill: 784 
email: "[email protected]" 
eventid: **42539660** 

:23と電子メール:私は、イベントIDを使用してコレクションを注文して、請求書を持つノードを削除したいです:

var id = 42539660; 
billref.orderByChild('eventid').equalTo(id).on("value", function (snapshot) { 
} 

しかし、私は特定のノードを削除するには、ここから進んでするかどうかはわかりません。御時間ありがとうございます。

答えて

0

あなたのクエリが一致するノードを削除したい場合:

var id = 42539660; 
billref.orderByChild('eventid').equalTo(id).on("value", function (snapshot) { 
    snapshot.forEach(function(childSnapshot) { 
    childSnapshot.ref.remove(); 
    }); 
} 

代わりにあなたがループの必要性削除するchild_addedを使用することができます。

var id = 42539660; 
billref.orderByChild('eventid').equalTo(id).on("child_added", function (snapshot) { 
    snapshot.ref.remove(); 
} 
+0

おかげでフランクを。私は自分のロジックを変更して、配列に表示される項目のfirebase push idを取得し、push idを使用してノードを削除しました。 – AjRev