代码是这样的,我更改后的bookData我打印出来发现是已经更改了,但是视图的数据未发生改变,请问这是什么原因导致的呢?
1 回答
交互式爱情
TA贡献1712条经验 获得超3个赞
由于 JavaScript 的限制, Vue 不能检测以下变动的数组:
当你利用索引直接设置一个项时,例如: vm.items[indexOfItem] = newValue
当你修改数组的长度时,例如: vm.items.length = newLength
为了解决第一类问题,以下两种方式都可以实现和 vm.items[indexOfItem] = newValue 相同的效果, 同时也将触发状态更新:
// Vue.set
Vue.set(example1.items, indexOfItem, newValue)
// Array.prototype.splice`
example1.items.splice(indexOfItem, 1, newValue)
为了解决第二类问题,你也同样可以使用 splice:
example1.items.splice(newLength)
摘自vue文档
添加回答
举报
0/150
提交
取消