关于Vue2的Watcher和Vue3的Effect

        在Vue 2中,Watcher是用于观察响应式数据变化并执行相应操作的机制。它通过在组件渲染过程中建立与数据的依赖关系,当数据发生变化时,Watcher会重新计算组件的依赖项,并触发组件的更新。Watcher可以通过watch选项或$watch方法来创建。 而在Vue 3中,引入了一个新的响应式系统,其中Effect是用于实现类似Watcher的功能的。Effect可以监听响应式数据的变化,并在数据变化时执行相应的操作。Effect可以通过调用Vue 3的reactive函数来创建。

区别:

  1. 内部实现机制不同:
    • Watcher是基于依赖收集的机制,通过在渲染过程中建立与数据的依赖关系来触发更新。
    • Effect是基于代理和反应式追踪的机制,通过在响应式数据上建立追踪关系来触发执行。
  2. 使用方式不同:
    • Watcher可以通过watch选项或$watch方法来创建,可以监听一个或多个数据的变化。
    • Effect可以通过调用Vue 3的reactive函数来创建,可以监听一个或多个响应式数据的变化。
  3. 依赖收集方式不同:
    • Watcher会在渲染过程中建立与数据的依赖关系,当数据发生变化时,会重新计算组件的依赖项,并触发更新。
    • Effect会在创建时建立与响应式数据的追踪关系,当响应式数据发生变化时,会执行相应的操作。 总结: Watcher是Vue 2中用于观察数据变化并执行相应操作的机制,而Effect是Vue 3中实现类似功能的概念。它们在内部实现机制、使用方式和依赖收集方式上有所不同。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值