2017-05-23 1 views
0

Ist es möglich, Daten aus Firebase innerhalb der Anwendung zu löschen? Ich kann derzeit Daten direkt von der Konsole hinzufügen, ändern und löschen, die in der Anwendung mit den child_added, child_changed und child_removed aktualisiert wird.Löschen von Firebase-Daten aus einer Webanwendung

Außerdem kann ich Firebase Daten hinzufügen mit .Push, die auch die Änderungen mit der Anwendung widerspiegelt.

Ich kann jedoch nichts in der Dokumentation finden, um vorzuschlagen, wie Daten aus Firebase durch die Anwendung entfernt werden. So etwas wie ein Bin-Symbol neben jedem Firebase-Objekt, das beim Klicken die Daten aus der Firebase-Datenbank entfernt und aktualisiert innerhalb der Anwendung.

Ist das möglich? Ich gehe im Kreis herum und kann es immer noch nicht knacken. Jede Hilfe würde sehr geschätzt werden.

Danke, G

Antwort

1

Für JS bitte diesen Code verwenden:

ref = new Firebase("myfirebase.com") 
ref.remove(); 

Hoffe, es hilft.

+0

Vielen Dank für Ihre Antwort. Aber ich habe die gleiche Frage, die ich Faizy gestellt habe - Wie würde ich das zu meinem JS hinzufügen? Wäre es ein Klick-Event? Mein Problem ist, dass die untergeordnete Funktion hinzugefügt enthält: document.createElement ('li'); Also, bis die Seite läuft, existiert das li-Element nicht. Wie würde ich also ein on-click-Ereignis erstellen, das nicht in meinem HTML-Code enthalten ist? – GeorgeBT

+0

Sie können kein On-Click-Ereignis für etwas erstellen, das nicht in Ihrem HTML-Code enthalten ist. Sie können nur für ein vorhandenes Objekt erstellen. Der Ablauf ist wie folgt: 'Zeige die Gegenstände' ->' Erstelle ein Klick Ereignis' -> 'Entferne das Kind' wie oben erwähnt. –

+0

Also das document.createElement ('li') ist nicht die richtige Art, Dinge zu tun? – GeorgeBT

0
ref.child(key).remove(); 

In JS könnten Sie tun es oben gezeigt mag. Denken Sie daran, es ist asynchronus.

+0

Vielen Dank für Ihre Antwort. Wie würde ich das zu meinem JS hinzufügen? Wäre es ein Klick-Event? Mein Problem ist, dass die untergeordnete Funktion hinzugefügt enthält: document.createElement ('li'); Also, bis die Seite läuft, existiert das li-Element nicht. Wie würde ich also ein on-click-Ereignis erstellen, das nicht in meinem HTML-Code enthalten ist? – GeorgeBT

1

Sie können es auf zwei Arten tun.

firebase.database().ref(CHILD_TO_DELETE).remove(); 

oder

firebase.database().ref(CHILD_TO_DELETE).set(null); 

So etwas wie ein Korb-Symbol neben jedes Firebase Objekt, das, wenn darauf geklickt wird das Stück von Daten aus der Datenbank Firebase und Update innerhalb der Anwendung entfernen.

Die Antwort zu diesem Teil ist, dass es innerhalb einer Klickereignisfunktion von vielleicht einem Löschenknopf sein kann.

+0

Danke Anand.Dies ist eine gute Antwort funktioniert für mich gut, also danke. Weißt du, ob es irgendwelche Möglichkeiten gibt, die ich haben kann, zum Beispiel, Kästchen an beiden Seiten jedes Firebase-Objekts ankreuzen und nachdem der Benutzer sie überprüft hat - sie klicken auf ein Mülleimer-Icon - und es entfernt alle markierten Objekte? – GeorgeBT

+0

Ihr Kind wird einige Push-IDs haben. Wenn Sie das Kästchen ankreuzen, sammeln Sie die IDs und wenn Sie auf die Schaltfläche "bin" klicken, erstellen Sie ein neues Objekt _updates_ mit Kindern: - "": null' Führen Sie dann 'firebase.database() aus. ref (PARENT_OF_YOUR_DATA) .update (Aktualisierungen); ' –

Verwandte Themen