vue2中数组的那7个方法是如何实现响应式的,原理是什么?
为什么vue2中数组的7个方法可以实现响应式,其他的方法却不行
回答:
与其提问不如试着看看源码找找。
为什么只有这7个方法——因为这7个方法会修改原数组,slice
/concat
等都是返回一个新数组,并不修改原数组,无需覆写
回答:
你可以理解为Vue直接覆写了一遍数组原型链上的方法,去通知OB数组被改变了。如果你直接修改数组下标则不会触发这些内部API,OB就不会知道这个数组被修改了,就不会去更新视图。
具体可以看这里 vue/array.ts at main · vuejs/vue。
如果你是初学者,可以看B站UP Vue面试题讲解 (数组的变化监听在P1的8分40秒处)这部分的讲解。
以上是 vue2中数组的那7个方法是如何实现响应式的,原理是什么? 的全部内容, 来源链接: utcz.com/p/933020.html