Vue2和Vue3的双向数据绑定对比

一、​​什么是双向数据绑定?​

可以把它想象成“数据和界面之间的自动传话筒”。比如你在网页的输入框里打字,输入的内容会​​自动保存到后台的数据里​​;反过来,如果后台的数据被修改了(比如代码更新),输入框里的内容也会​​自动跟着变​​。就像两个人互相传话,一方动,另一方也动,完全不用你手动操作

二、Vue2和Vue3的监控数据类比​

  • ​Vue2​​:
    Object.defineProperty监控数据,像是一个只能盯着​​固定门窗​​的保安。它只能监控已有的属性,如果家里突然多开一扇窗户(新增属性)或拆掉一堵墙(删除属性),它就懵了,得手动告诉它(用Vue.set方法)

  • ​Vue3​​:
    改用Proxy监控数据,像装了一套​​全屋智能监控​​。不管新增窗户、拆墙,还是挪家具(数组长度变化),它都能自动发现,不用手动提醒

 三、 具体的差异

​1.数据劫持方式不同​
  • ​Vue2​​:基于Object.defineProperty,通过递归遍历对象的每个属性,逐个添加getter/setter来监听数据变化。这种方式只能劫持对象的​​已有属性​
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值