我有两个对象的数组:
genericItems: Item[] = [];
backupData: Item[] = [];
我正在用genericItems
数据填充HTML表。该表是可修改的。有一个重置按钮可以撤消使用所做的所有更改backUpData
。此数组由服务填充:
getGenericItems(selected: Item) {
this.itemService.getGenericItems(selected).subscribe(
result => {
this.genericItems = result;
});
this.backupData = this.genericItems.slice();
}
我的想法是,用户更改将反映在第一个阵列中,而第二个阵列可用作重置操作的备份。我在这里面临的问题是用户修改表时(genericItems[])
第二个数组backupData
也被修改了。
这是怎么回事,如何预防呢?