为什么数据变了 但是视图并没有更新?

Vue框架中的数据双向绑定原理是通过数据劫持和发布订阅模式实现的。数据劫持利用Object.defineProperty()监听data中的初始属性变化。然而,对于后期动态添加的属性,Object.defineProperty()无法进行监听。为了解决这个问题,Vue提供了$set方法,确保新添加的属性也能触发视图更新。使用$set可以确保模型改变时,视图能够正确响应并更新。
摘要由CSDN通过智能技术生成

在vue中 模型变视图变 是因为vue中有数据劫持与发布者订阅者模式共同影响的 但是 数据劫持是通过Object.deineProperty()来进行劫持的 但是Object.deineProperty() 只会监听初始化的时候data里面的数据 如果初始化之后新添加的属性是不会被劫持到的 所以模型变了数据劫持就劫持不上 视图也就不更新

解决方式 使用$set来完成

this.$set(你要操作的数据,你要新增的key,你要新增的val)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值