vue中遇到数据变了,视图没有改变的原因及解决方案---kalrry

出现数据变了视图没变的原理

在vue中,模型变视图变,是因为vue中有数据劫持与发布订阅者模式共同影响的,但是数据劫持是通过Object.defineProperty()来进行劫持的,但是Object.defineProperty()只会监听初始化的时候data数据,初始化之后新添加的数据是不会被劫持的,这才导致模型变了数据劫持劫持不上,导致视图没有gengxin

解决方案 $set

使用 $set 解决
this.$set(你要操作的数据,你要新增的key,你要添加的value)
this.$set(this.obj,"age","18")

$set的解决原理

待整理ing

Logo

Vue社区为您提供最前沿的新闻资讯和知识内容

更多推荐