Antwort

0

Da Sie /users/{uid} hören, erhalten Sie immer Updates auf dieser Ebene - so werden event.data.ref und event.data.adminRef Referenzen unter /users/<THE_UID_OF_THE_WRITE> sein.

Um präziser, gibt es ein paar andere Orte, die Sie für weitere Informationen suchen können:

  1. Event#params: Sie können event.params.uid rufen Sie die {uid} aus Ihrem Beispiel zu erhalten.
  2. Sie können die Methode DeltaSnapshot#previous verwenden, um die Daten vor dem Schreiben zu betrachten. Also, wenn Sie wissen wollen, was geschrieben wurde, könnten Sie diff event.data.val() und event.data.previous.val() oder rufen Sie event.data.changed('GyroScope-Z-Axis'), um zu sehen, ob diese bestimmte Eigenschaft geändert hat.
  3. Sie könnten auf einer tieferen Ebene mit etwas wie /users/{uid}/{prop} hören und dann würden Sie Benachrichtigungen für jede Untereigenschaft erhalten, nicht nur die oberste Ebene. Mit diesem Muster würde Ihr Beispiel einen Wert von event.params.prop haben, der GyroScope Z-Axis entspricht.
  4. Sie könnten z.B. /users/{uid}/GyroScope-Z-Axis, um nur über diese spezifische Eigenschaft benachrichtigt zu werden.

Hoffe, dass Sie mit vielen potenziellen Angriffswege bietet. Viel Glück!

+0

Danke dafür. Gibt es in meiner Datenbankstruktur eine Möglichkeit, Childs unter GyroScope X-Achse in umgekehrter Reihenfolge zu iterieren, da neu aktualisierte Informationen in die letzte Zeile eingefügt werden? –

+0

Firebase bietet keine Möglichkeit zur Abfrage in umgekehrter Reihenfolge. Ihre Optionen sind a) Verwenden Sie 'limitToLast (n)' und kehren Sie das Ergebnis selbst um oder b) erstellen Sie Sortierschlüssel, die implizit explizit in einer negativen Reihenfolge sortieren. –

Verwandte Themen