angular2: wie man ein Objekt in ein anderes Objekt kopiert
Bitte helfen Sie mir, um zu kopieren Objekt in ein anderes Objekt mit Winkel 2 ?
In Winkel, die ich verwendet, eckig.copy() zum kopieren von Objekt zu verlieren Referenz des alten Objekts. Aber, wenn ich dasselbe im Winkel 2 immer folgende Fehlermeldung:
Fehler: der Winkel ist nicht definiert.
InformationsquelleAutor der Frage Swetha | 2016-09-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
Lösung
Angular2 entwickelt, die auf dem Boden der modernen Technologien wie TypeScript und ES6. So können Sie einfach tun
let copy = Object.assign({}, myObject)
.Objekt zuweisen - schöne Beispiele.
Für verschachtelte Objekte :
let copy = JSON.parse(JSON.stringify(myObject))
InformationsquelleAutor der Antwort Mikki
aber das klappt nicht bei verschachtelten Objekten. ALSO eine alternative wäre
InformationsquelleAutor der Antwort Ankit Raonka
Für Verschachtelte Objekt, können wir die Verwendung von 3rd-party-Bibliotheken, die für tiefes kopieren von Objekten.
Im Falle von lodash, verwenden Sie _.cloneDeep()
InformationsquelleAutor der Antwort rajesh kumar
Als Vorschlag vor, der saubere Weg, der tief kopieren von Objekten mit verschachtelten Objekten im inneren ist durch die Verwendung von lodash ist cloneDeep Methode.
Eckige, man kann es so machen:
Installieren lodash mit
yarn add lodash
odernpm install lodash
.In der Komponente, import
cloneDeep
und Verwendung:Es ist nur 18kb zusätzlich zu Ihrer errichten, lohnt sich für die Vorteile.
Habe ich auch geschrieben Artikel hierwenn Sie mehr Einblick, warum der Einsatz lodash ist cloneDeep.
InformationsquelleAutor der Antwort BogdanC