VUE数据更新视图不更新的原因

当你利用索引直接设置一个项时,例如:vm.items[indexOfItem] = newValue
当你修改数组的长度时,例如:vm.items.length = newLength

数组更新只能通过以下方法push()pop()shift()unshift()splice()sort()reverse()

如果想直接通过下标修改数组的话,就需要使用vm-set 方法来通知vue你更新了这个数组。

vm.$set( target, key, value )

 
Vue. set (vm.obj, 'k1' , 'v1' )
 
this.$ set (this.obj, 'k1' , 'v1' )
 
this.obj  =  Object .assign({}, this.obj)
 
this.obj  =  Object .assign({}, this.obj,{ 'k1' , 'v1' })
另外:实例被创建时 data 中存在的属性才是响应式的

猜你喜欢

转载自www.cnblogs.com/youngMan-MrS/p/12888743.html