情况1
vm.arr = [{ a: 2, b: 4 }]; //可以检测变化
直接改变数组变量指向的数组,是可以触发视图修改的
情况2
vm.arr[0] = { a: 2, b: 4 }; //无法检测变化 无法更新视图
通过索引方式修改数组中某个元素的值,无法触发视图修改
情况3
vm.arr[0] = { a: 2, b: 4 };
vm.arr.push({ a: 5, b: 7 })
通过索引修改某个元素没有触发视图修改,接着通过push会触发视图修改
情况4
vm.arr[0] = { a: 2, b: 4 };
vm.$forceUpdate()
通过forceUpdate强制更新
情况5(推荐方法)
vm.$set(vm.arr, 0, { a: 2, b: 4 })
通过set设置下标值 代替索引方式