[坑]解决修改对象数组,改一个其他同时修改和改完没有变化

原因是对象是引用类型,传递的是引用地址,所以你两个数组引用的是同一个对象,只要其中一个数组改变,就会导致对象改变,进而另一个引用的数组也会改。

解决办法就是将需要放入数组的对象先深拷贝一份,用拷贝的对象,这样就不存在引用关系了。

//data是传递过来的对象
const newData = Object.assign({}, JSON.parse(JSON.stringify(data)))
this.goodsForm.skus.push(newData)

修改数组里的值,用this.goodsForm.skus[index]=newData是修改不了的,可以用 this.$set( this.goodsForm.skus, index, newData)

你可能感兴趣的:([坑]解决修改对象数组,改一个其他同时修改和改完没有变化)