Cloud-Funktionen für FB: Wie zu get-Ereignis aus.Daten.ref.Eltern.Kind("xxx").val?
Bin ich mit einer Struktur, die auf FB so:
members
|- -kSjJSDFjl2DFc
|- isDeleted: true
|- gender: "male"
In meinem cloud-Funktion, ich schrieb:
exports.doMemberDeletion = functions.database.ref("/members/{memberId}/isDeleted").onWrite(event => {
const isDeleted = event.data.val();
if (isDeleted) {
const gender = event.data.ref.parent.child("gender").val; //Error here
console.log("Deleted a " + gender + " member");
}
});
Jedoch, es gibt Fehler auf event.data.ref.parent.child().val
bitte beraten, wie man den Wert in diesem Fall. Danke!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den DeltaSnapshot in der event-Daten für die übereinstimmende Lage nur. Daten höher in den Baum oder in den Geschwister ist nicht verfügbar. Wenn Ihr Mitglied Daten ist nicht so groß, dass Sie sich Gedanken über das Zuhören für jede Veränderung, Sie könnten dies tun:
Ihrem ursprünglichen Ansatz funktioniert auch, erfordert aber ein Abruf der Daten Geschlecht:
return
das Ergebnisonce().then()
ist, aber das sollte nicht dazu führen, dass die Fehlermeldung, die Sie sehen.Hat der Benutzer die Berechtigung zum Zugriff auf die Eltern? Wenn nicht, statt Ereignis.Daten.ref, verwenden Sie Ereignis.Daten.adminRef zu haben uneingeschränkten Zugriff auf die Datenbank. Sehen die Dokumentation für weitere Informationen.