网站地图    收藏   

主页 > 采坑 > 前端采坑 > vue常见坑 >

Vue 不能检测以下变动的数组

来源:未知    时间:2021-04-29 00:19 作者:小飞侠 阅读:

[导读] 由于 JavaScript 的限制,Vue 不能检测以下变动的数组: 当你利用索引直接设置一个项时,例如:vm.items[indexOfItem] = newValue 当你修改数组的长度时,例如:vm.items.length = newLength 为了解决第...

由于 JavaScript 的限制,Vue 不能检测以下变动的数组:

  1. 当你利用索引直接设置一个项时,例如:vm.items[indexOfItem] = newValue

  2. 当你修改数组的长度时,例如:vm.items.length = newLength

为了解决第一类问题,以下两种方式都可以实现和 vm.items[indexOfItem] = newValue 相同的效果,同时也将触发状态更新:

// Vue.setVue.set(example1.items, indexOfItem, newValue)
// Array.prototype.spliceexample1.items.splice(indexOfItem, 1, newValue)

为了解决第二类问题,你可以使用 splice:

example1.items.splice(newLength)

触发视图更新的方法:

  1. 变异方法

  • push()

  • pop()

  • shift()

  • unshift()

  • splice()

  • sort()

  • reverse()

  1. vue提供的set方法

  • Vue.set( target, key, value )


自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论