关于响应式
vue的双向绑定是基于响应式来做的,即给一个Vue对象的属性加上getter, setter方法,在这些方法中处理双向绑定。但这种方式就会出现下面这些坑
对象响应式
Vue中的属性如果是Object,或者是数组,数组中有Object,那么这些Object最好在最开始就把所有需要用到的属性都定义一遍,如果在运行中重新添加属性,这个属性并不是响应式的,就不会实现双向绑定,例如:
const vm = new Vue({ data: { a: { text: 'aaa' } } }) vm.a.b = 'ccc'
这样的情况,a的b属性不是响应式的,所以不会双向绑定
Date对象
对Date对象的操作不是响应式的