Vue 的 data 是响应式的。
当把一个普通的 JavaScript 对象传入 Vue 实例作为 data 选项,Vue 将遍历此对象所有的属性,并使用 Object.defineProperty 把这些属性全部转为 getter/setter。通过这个 Vue 实例来监听数据的变化。
如果新增 key,Vue 没有办法监听和代理,所以最好提前把属性都写出来,不要新增 key。数组中新增 key,可以用 set 来新增 key,并更新 UI。
尤雨溪篡改了 7 个 API 方便对数组进行增删。
- push()
- pop()
- shift()
- unshift()
- splice()
- sort()
- reverse()
「@浪里淘沙的小法师」