Vue3新特性

一、响应式系统

1.vue2中的响应式

    在vue2中,响应式机制是基于Object.defineProperty()实现的,但是Object.defineProperty()只能够拦截对象中存在的属性,所以vue2中的所有数据必须要在data里声明。同时当拦截的对象是一个数组时,对数组的操作并不能完美的拦截,需要额外的辅助API来协助完成。

2.vue3中的响应式

    在vue3中,实现响应式的方式由Object.defineProperty()变更为了Proxy,Proxy拦截一个对象时,该对象内所有的属性都将会被监听,且它还能够监听Set和Map等更数据格式。

二、自定义渲染器

1.响应式独立

    在Vue2中,响应式只服务于Vue,而在Vue3的组织架构中,响应式独立了出来,Vue3的响应式就和Vue解耦了,你甚至可以在Node.js和React中使用响应式

2.渲染逻辑拆分

    在Vue3中,渲染逻辑被拆分成平台无关渲染逻辑和浏览器渲染API两部分,若需要使用Vue3开发小程序和客户端时,只需要实现平台的渲染逻辑就可以了。

三、全部模块使用TypeScript重构

1.引入类型系统的好处

(1)类型系统带来了更方便的提示
(2)类型系统让代码更健壮

四、Composition API 组合语法

1.Options API的问题

(1)所有数据都挂载在this之上,因此OPtions API的写法对TypeScript类型退导很不友好
(2)新增功能基本都得修改data、method等配置,开发体验很不友好
(3)代码复用困难,很难抽离通用逻辑,只能使用mixin

2.使用Composition API的好处

(1)所用API通过import引入,对于没有使用的功能,打包是会自动清理
(2)相同功能模块的代码可以在同一个地方书写
(3)代码复用方便
(4)<script steup> 语法糖

五、新的组件

Vue 3 内置了 Fragment、Teleport 和 Suspense 三个新组件

1.Fragment

Vue 3 组件不再要求有一个唯一的根节点,清除了很多无用的占位 div。

2.Teleport

允许组件渲染在别的元素内,主要开发弹窗组件的时候特别有用。

3.Suspense

异步组件,更方便开发有异步请求的组件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

volit_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值