0
私はコントローラに送信する前に変換するオブジェクト配列を持っています。オブジェクトはディープコピーの原因の問題を割り当てます
次のようにコピーする角度コード:
targetObjArray = object.assign({}, sourceObjArray);
// when i call transform it does not effect source object :)
transformSourceObject(targetObjArray)
が、それは次のような問題が発生します。
sourceObjArray: SourceObject[] = [..];
targetObjArray: SourceObject[]= [];
targetObjArray = object.assign(sourceObjArray);
// when i change target object it also cause source object to change
transformSourceObject(targetObjArray)
次が動作しているようです。
Could not read document: Can not deserialize instance of java.util.ArrayList out of START_OBJECT token at [Source: [email protected]; line: 1, column: 1]; nested exception is com.fasterxml.jackson.databind.JsonMappingException: Can not deserialize instance of java.util.ArrayList out of START_OBJECT token at [Source: [email protected]; line: 1, column: 1]
私のコントローラメソッドのシグネチャは次のとおりです。
@RequestMapping(.., method=RequestMethod.POST)
public save(@RequestBody List<Object>, BindResult bindResult){}
作業? ['Object.assign'](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Object/assign)は、最初の引数を変更します。 – jonrsharpe
私は単にangle1と同様にしたいと思います。オブジェクトを深くコピーするangular.copy。あなたはお勧めできますか? –
質問に「SourceObject」のコードを追加してください –