踩坑记录:因为使用了不是响应性的动态赋值,动态赋值成功但是页面没有渲染出来!
//实例中使用的 赋值成功 页面没响应
this.array[index].value = '赋动态'; // 不是响应性的
// 参照官方提供的方法 赋值成功 页面响应
this.$set(this.array,index,'动态'); //方法一
this.array.splice(index,1,'动态值'); //方法二
附:
查了下vue.js官方【检查变化的注意事项】中有说明:
Vue 不能检测以下数组的变动:
当你利用索引直接设置一个数组项时,例如:vm.items[indexOfItem] = newValue
当你修改数组的长度时,例如:vm.items.length = newLength
根据上面两类变动提供了两种动态赋值方法:
// Vue.set 方法 vm.items 为数组 indexOfItem 下标值 newValue 是 更改的值
Vue.set(vm.items, indexOfItem, newValue)
// Array.prototype.splice 方法 indexOfItem 下标值 newValue 是 更改的值
vm.items.splice(indexOfItem, 1, newValue)