vue修改数据绑定的视图不能动态更新

2022-02-14  本文已影响0人  李小白呀

在写项目的时候遇见一个问题,修改vue v-bind或v-model绑定的数据时,视图不能更新

表格里面数据更新视图不变,修改其他数据时才会更新。

后来发现 vue文档里有这样一句话:

Vue 无法检测 property 的添加或移除。由于 Vue 会在初始化实例时对 property 执行 getter/setter 转化,所以 property 必须在 data 对象上存在才能让 Vue 将它转换为响应式的。

这句话的意思就是说,vue是基于响应式的,在vue中定义(绑定)的对象或数组,在新增或删除属性时,vue并不能检测到这些变化,但可以检测到属性的修改,(因为是基于getter/setter的)所以,只有data对象上存在的属性才可以是响应式的,就是可以被更新的!

然后发现是因为新增的时候不在data上,修改后就可以了。

其他设置新增的属性,以及Vue 不能检测以下数组的变动的情况可以看以下文章:

解决vue修改数据绑定的视图不能动态更新的问题

上一篇下一篇

猜你喜欢

热点阅读