比如我有个list数组列表A,当我要修改某个位置的元素时,我就先把这组数据取出来,放到另一个变量B中,然后把这个变量中的数据绑定到dialog中,当点击保存按钮时,我再把这个变量B的数据重新Vue.set
到原来的数组A中。但是当我在dialog中修改B时,A也同时改了。
methods : {
modify(index){
this.selectedlist = this.list[index]; // 把list中index位置的数据取出来
}
}
我想的是,只修改selectedlist,当我保存时,使用Vue.set
在把selectedlist中的数据保存到list中。
补充: list[index]是object类型的数据。
难道说要把dialog放到组件中,通过props传递参数才可以吗?谢谢
JS 中 数组 和 Object 是 引用传递
如果不需要同时修改掉,就需要 创建一个副本了。
创建副本可以,
let newXXX = JSON.parse(JSON.stringify(xxx));
或者用
Object.assign