当前位置: 首页 > wzjs >正文

东城东莞网站建设宁波网站推广哪家公司好

东城东莞网站建设,宁波网站推广哪家公司好,做网站前端难吗,深圳做网站 创同盟深入解析Vue3中ref与reactive的区别及源码实现 前言 Vue3带来了全新的响应式系统,其中ref和reactive是最常用的两个API。本文将从基础使用、核心区别到源码实现,由浅入深地分析这两个API。 一、基础使用 1. ref import { ref } from vueconst count…

深入解析Vue3中ref与reactive的区别及源码实现

前言

Vue3带来了全新的响应式系统,其中refreactive是最常用的两个API。本文将从基础使用、核心区别到源码实现,由浅入深地分析这两个API。

一、基础使用

1. ref

import { ref } from vueconst count = ref(0)
console.log(count.value) // 0
count.value++

2. reactive

import { reactive } from vueconst state = reactive({ count: 0 })
console.log(state.count) // 0
state.count++

二、核心区别

1. 数据类型

  • ref可以包装任意值类型(原始值、对象)
  • reactive只能处理对象类型

2. 访问方式

  • ref需要通过.value访问
  • reactive直接访问属性

3. 解构行为

  • ref解构后仍保持响应性
  • reactive解构后会丢失响应性

4. 性能考量

  • ref更适合独立的基本类型值
  • reactive更适合复杂对象

三、源码实现解析

1. ref实现原理

// packages/reactivity/src/ref.ts
class RefImpl<T> {private _value: Tprivate _rawValue: Tpublic dep?: Dep = undefinedpublic readonly __v_isRef = trueconstructor(value: T) {this._rawValue = valuethis._value = convert(value)}get value() {trackRefValue(this)return this._value}set value(newVal) {newVal = convert(newVal)if (hasChanged(newVal, this._rawValue)) {this._rawValue = newValthis._value = newValtriggerRefValue(this)}}
}

2. reactive实现原理

// packages/reactivity/src/reactive.ts
function reactive(target: object) {if (isReadonly(target)) {return target}return createReactiveObject(target,false,mutableHandlers,mutableCollectionHandlers)
}function createReactiveObject(target: Target,isReadonly: boolean,baseHandlers: ProxyHandler<any>,collectionHandlers: ProxyHandler<any>
) {// 使用Proxy进行代理const proxy = new Proxy(target,targetType === TargetType.COLLECTION ? collectionHandlers : baseHandlers)proxyMap.set(target, proxy)return proxy
}

四、最佳实践

  1. 基本类型优先使用ref
  2. 复杂对象使用reactive
  3. 组合使用时注意解构问题
  4. 大型项目考虑使用toRefs保持响应性

五、总结

refreactive都是Vue3响应式系统的核心,理解它们的区别和实现原理,能帮助我们更好地使用Vue3开发应用。

http://www.dtcms.com/wzjs/270384.html

相关文章:

  • 怎样建设网站赚钱国外网站制作
  • 案例网站模板_案例网爱站网挖掘关键词
  • 外贸网站建设公司服务aso排名服务公司
  • 外贸英语学习网站提高网站排名
  • 网站建设成本报表app广告联盟
  • 网站改版上线微信软文模板
  • 网站建设所需基本资料子域名查询工具
  • 做医学网站高级seo
  • 网站是怎么赢利的百度爱采购优化
  • 杭州哪家做企业网站seo查询工具网站
  • 网店网站建设网络销售推广平台
  • 做网站 除了域名微信营销的方法和技巧
  • 邻水建设局网站杭州网络
  • 火车头 wordpress xml前端seo怎么优化
  • 手机分销网站建设seo精华网站
  • 淄博做网站建设的公司网站排名优化怎么做
  • 自己做外贸网站哪个平台可以随便发广告
  • 如何开发微信公众号小程序怎么优化一个网站
  • 相亲网站开发网站代运营价格
  • wordpress htmlgoogle移动服务应用优化
  • 网站开发结构图汕头seo计费管理
  • 厦门网站建设报企业网站建设制作
  • 网站制作教程谁的好全网营销推广
  • 用asp做的几个大网站百度网
  • 电子商务网站建设中制作app软件平台
  • 做网站维护一工资多少钱营销型网站建设托管
  • wordpress怎么注册用户名关键词首页排名优化
  • 张家界做网站的人免费的行情网站app
  • 山东微商网站建设百度推广管理平台登录
  • 免费交友网站如何建设南通网络推广