2016-11-18 1 views
0

Meine App verwaltet Anforderungen, die von Benutzern gesendet und unter Firebase Database gespeichert wurden. Die requests wie so aufgeführt:Abrufen von Daten aus der Firebase-Datenbank Letzte hinzugefügte Node.js-App

enter image description here

Unter requests ich Anfragen unter s Benutzer-ID 'sortiert speichern. In meinem Node.js Webserver höre ich Änderungen wie folgt:

requestsRef.limitToLast(1).on('value', function(requestSnapshot) { 
    var request = requestSnapshot.val(); 
} 

den „Wert“ mit benachrichtigt werden, wenn jede Anforderung hinzugefügt wird, wenn eine neue Anforderung hochgeladen es unter dem Eigentümer „Benutzer-ID“ hochgeladen. In diesem Stadium werde ich einmal benachrichtigt, wenn ich mein Programm starte und auch wenn Anfrage hinzugefügt (wie erwartet), aber das request Objekt enthält alle Daten unter requests, ich will es nur die letzte Anfrage hinzugefügt enthalten. Wie kann ich es so arbeiten lassen?

Danke!

Antwort

2

Wenn Sie nur die Daten für jede hinzugefügte neue Anforderung abrufen möchten, versuchen Sie child_added anstelle von value.

aus den firebase documentation Extrahiert:

[..] Im Gegensatz zu Wert, der den gesamten Inhalt der Lage zurückkehrt, wird child_added einmal für jedes bestehendes Kind ausgelöst und dann jedes Mal wieder ein neues Kind zu dem hinzugefügt wird angegebener Pfad Dem Ereignisrückruf wird ein Snapshot mit den Daten des neuen Kindes übergeben. [..]

+0

Ja, aber das bedeutet, dass ich .on (child_added) für jede Benutzer-ID aufrufen muss ... –

Verwandte Themen