Vue3 响应式原理、reactive函数和ref函数的区别

1、Vue3 响应式原理

原理:

  • 通过Proxy(代理): 拦截对象中任意属性的变化, (属性值的读写、属性的添加、属性的删除等);

  • 通过Reflect(反射): 对源对象的属性进行操作。

2、 reactive函数和ref函数的区别

原理:

    ref通过Object.defineProperty()getset来实现响应式(数据劫持)

    reactive通过使用Proxy来实现响应式(数据劫持), 并通过Reflect操作源对象内部的数据。

定义数据:

    ref定义基本类型数据;

    reactive定义对象(或数组)类型数据。

  ps:ref也可以用来定义对象(或数组)类型数据, 它内部会自动通过reactive转为代理对象。

使用:

    ref定义的数据:操作数据需要.value,读取数据时模板中直接读取不需要.value

    reactive定义的数据:操作数据与读取数据时均不需要.value

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值