vue数据更新,视图无法更新问题

在vue中修改数据,但是vue没有检测数据修改,视图数据未能更新的情况

  1. 使用index索引修改数据时,this.array[index].attributeName = newValue
  2. 视图修改数组长度,this.array.length = newLength

vue能监测到的数据更新方法,包括(前7个方法会改变原数组)

  1. push() ----向数组末尾添加一个或者多个元素,并返回新的长度
  2. pop() ----删除数组的最后一个元素,把数组的长度减1,并返回被删除元素的值
  3. unshift() ----向数组的开头添加一个或多个元素,并返回新的长度
  4. shift() ----数组的第一个元素从其中删除,并返回被删除的值
  5. splice() ----从数组中添加/删除项目,然后返回被删除的项目
  6. sort() ----对数组的元素进行排序
  7. reverse() ----对数组的元素进行倒序排序
  8. filter(), concat(), slice() 。这些不会改变原始数组,但总是返回一个新数组。当使用非变异方法时,可以用新数组替换旧数组
  9. Vue2.0新增的Vue.set( target, key, value )方法监测更新视图数据

视图数据无法更新的解决方案

// 数组操作, 更新整个数组
this.intershipList.splice(this.intershipList, 0)

// Vue.set( target, key, value),更新数组某项数据
Vue.set(this.intershipList, index, newValue])

你可能感兴趣的:(vue数据更新,视图无法更新问题)