Array的变化侦测

121 阅读1分钟

Array通过方法来改变内容,我们通过创建拦截器去覆盖数组原型的方式来追踪

6da186a4d089a9d941cefac518653e7.jpg 引用自《深入浅出Vue.js》

一般再Observer中只针对那些需要侦测变化的数组使用__proto__来覆盖原型,不支持__proto__的浏览器使用循环拦截器,把拦截器中的方法直接设置到数组上.

840d7eb6780f88feb1ddfd289d8245d.jpg 引用自《深入浅出Vue.js》

除了侦测已有的数据之外,当使用push等方法向数组中新增数据时,需要将新增的数据提取出来,然后使用observeArray对新增数据进行变化侦测

cf338b13f3a8139c86c363a317f0dad.jpg 引用自《深入浅出Vue.js》