In ImmutableJS, wie push-ein neues array, in eine Karte?
Wie kann ich Folgendes erreichen mit ImmutableJS:
myMap.get(key).push(newData);
InformationsquelleAutor der Frage Chopper Lee | 2015-07-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie tun wie folgt: (siehe diese JSBin)
Seit
myMap
ist unveränderlich, wenn Sie versuchen, sich zu setzen/aktualisieren/löschen von Daten innerhalb es, wird es wieder ein Verweis auf die neuen Daten. Also, würden Sie haben, um es in eine variable um es zu erreichen (in diesem FallmyNewMap
).InformationsquelleAutor der Antwort Brian Park
Wenn das array referenziert den Schlüssel ist eine einfache javascript-array - dann werden Sie tatsächlich mutieren, Wert -, so dass Ihr code wie erwartet funktioniert (ie - myMap enthalten wird verändert/mutiert array bei 'Schlüssel' mit dem newData geschoben.) Aber diese Art von Niederlagen der Zweck der Unveränderlichkeit, so würde ich empfehlen, dass der Schlüssel in myMap-Referenz auf eine Unveränderliche.Liste. In welchem Fall Sie wollen, zu tun:
InformationsquelleAutor der Antwort Geoffrey Abdallah