Felder in verschachtelten Objekten in Firestore-Dokumenten aktualisieren?

Lesezeit: 2 Minuten

Benutzer-Avatar
TccHtnn

Ich habe eine Datenstruktur wie:

Geben Sie hier die Bildbeschreibung ein

Ich möchte den Wert des “Test”-Schlüssels im “ersten” Objekt bearbeiten. Ich folgte dem Dokument weiter https://firebase.google.com/docs/firestore/manage-data/add-data

Aber es hat bei mir nicht funktioniert.

Der nodejs-Code:

var setAda = dbFirestore.collection('users').doc('alovelace').update({
        first : {
            test: "12345"
            }
});

Das Ergebnis in firestore:
Geben Sie hier die Bildbeschreibung ein

Die Taste “test2” war weg. Ich möchte jedoch nur den Wert von “test” aktualisieren und “test2” behalten.

Irgendeine Lösung für dieses Problem?

  • Aus der Dokumentation geht nicht hervor, dass es einen Unterschied im Verhalten gibt, wenn die Signatur des zweiten Typs verwendet wird DocumentReference.updatewas zu einem harten Schreibvorgang führt: firebase.google.com/docs/reference/js/…

    – Tom

    21. Mai 2019 um 3:16 Uhr

  • Wenn ich die löschen wollte test.first Eintrag der test Karte, müsste ich eine durchführen get() Vorgang manuell löschen und dann das Ganze aktualisieren first Karte? Oder gibt es eine ähnliche Operation, um verschachtelte Felder in Karten zu löschen? @Peter

    – perepm

    15. April 2020 um 7:15 Uhr

  • @ppicom Sie müssen so etwas tun update({"first.test" :firebase.firestore.FieldValue.delete()});

    – Peter Haddad

    15. April 2020 um 7:21 Uhr

  • Dies funktioniert aus irgendeinem Grund nicht mit .set({…}, {merge: true).

    – rendom

    23. September 2020 um 17:08 Uhr


  • hast du das unter stackoverflow.com/a/57217966/7015400 @rendom ausprobiert?

    – Peter Haddad

    23. September 2020 um 17:11 Uhr


  • Dies ist im Wesentlichen dasselbe wie Peters Lösung, außer dass es eine Vorlagenzeichenfolge verwendet …

    – Junge

    5. Mai 2020 um 18:32 Uhr

  • Vielen Dank. Ich habe es mit ${nestedKey} versucht, aber es hat nicht funktioniert, bis ich es mit verstecke [].

    – y.selimdogan

    29. Dezember 2020 um 10:32 Uhr

  • Es wurde versucht, den unnötigen Teil “Dieser Code ist viel besser” zu bearbeiten, und es wurde ein Fehler mit “Warteschlange bearbeiten ist voll” angezeigt.

    – Sam

    28. Oktober 2021 um 0:36 Uhr

  • @Sam Bearbeitet. Vielen Dank.

    – Khaschuluu Munkhbayar

    3. November 2021 um 9:21 Uhr

  • Diese Methode funktioniert auch, aber es wird keine Ausnahme ausgelöst, wenn das Feld nicht im Objekt vorhanden ist, es wird nur hinzugefügt.

    – ShaneWalker

    13. Mai um 23:46 Uhr

1015190cookie-checkFelder in verschachtelten Objekten in Firestore-Dokumenten aktualisieren?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy