当函数执行到this.agents.splice()时,我设置了断点.发现传参index是0,但是页面上的列表项对应的第一行数据没有被删除, WTF!!! 这是什么鬼!然后我打开Vue Devtools, 然后刷新了一下,发现那个数组的第一项还是存在的 removeOneAgentByIndex: function (index) { this.agents.splice(index, 1) } 然后我就谷歌了一下,发现这个splice not working properly my objec
由于此对象的引用类型指向的都是一个地址(除了基本类型跟null,对象之间的赋值,只是将地址指向同一个,而不是真正意义上的拷贝) 数组: let a = [11,22,33]; let b = a; // 这个时候的赋值只是把b的指向地址指向a,所以a b 是同一块物理地址 b.push(44); //这个时候 a和b元素都是 [11,22,33,44] 对象:与数组同理 这样的情况下 如果我们不需要这种双向数据绑定的时候该怎么办呢? 解决办法:小技巧 copyDeep(templateData)