vue.js组件改变了数据,但是dom并没有刷新

clipboard.png

clipboard.png

clipboard.png

改变了值,但是dom并没有刷新,求问什么情况?

第二个select的数据已经是{},但是dom上还是显示“全部city”

回答:

文档中说过这个问题,链接
改变数组元素使用 $set() 或 vue 包装过的变异方法

回答:

因为 JavaScript 的限制,Vue.js 不能检测到下面数组变化:

  1. 直接用索引设置元素,如 vm.items[0] = {};

  2. 修改数据的长度,如 vm.items.length = 0。

为了解决问题 (1),Vue.js 扩展了观察数组,为它添加了一个 $set() 方法:

// 与 example1.items[0] = ... 相同,但是能触发视图更新
example1.items.$set(0, { childMsg: ‘Changed!’})
至于问题 (2),只需用一个空数组替换 items。

回答:

改成这样试试:

this.filter.condition[0].children.$set(1, {});

回答:

我遇到和你类似的情况下,你可以看看这个由于 JavaScript 的限制,Vue 不能检测以下变动的数组

暂无评论

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注