了解vue3与vue2的差别

Vue3在兼容TypeScript、异步组件定义、属性处理、事件处理、生命周期、API变化等方面进行了重大更新,移除了如filter、children访问、on/off等特性,并引入了emits选项、多根节点支持、createApp API、响应式原理的改变。同时,Vue3通过hoistStatic、cacheHandlers等优化提升了性能,使得开发体验和应用性能得到显著增强。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、vue3提高了对typeScript的兼容性
2、vue3中新增了defineAsyncComponent用于显示定义异步组件
3、vue2中的 a t t r s 不 包 含 c l a s s 和 s t y l e 属 性 , v u e 3 中 包 含 4 、 v u e 3 中 移 除 了 事 件 处 理 中 对 attrs不包含class和style属性,vue3中包含 4、vue3中移除了事件处理中对 attrsclassstylevue34vue3on、 o f f 、 off、 offonce的支持
5、vue3中移除了 c h i l d r e n , 父 组 件 无 法 通 过 children,父组件无法通过 children,children访问子组件
6、自定义组件时创建的钩子函数发生变化
7、mixin合并时,只合并$data中有的属性
8、vue3中提供了类似props的emits选项,该选项中记录所有发出的事件,可以在其中对事件做验证
9、同一个组件可以绑定多个v-model,组件上的 v-model 使用 modelValue 作为 prop 和 update:modelValue 作为事件
10、vue3移除了对过滤器的支持
11、正式支持多根节点(片段)
12、新增全局api createApp,Vue.prototype替换为globalProperties、移除Vue.extend
13、vue3中v-for的key不在是必须的,vue会自动生成一个key
14、vue3不再支持使用键码作v-on的修饰符,支持v-on:keyup.page-down的写法
15、渲染函数中的h不再作为参数传入,现在通过全局导入,VNode的结构变化
16、v-if和v-for同时存在时,v-if总会优先于v-for
17、生命周期发生变化
18、新增组合式API
19、响应式原理由object.definedProperty变更为es6的proxy

vue3的性能提升:
静态提升(hoistStatic)

事件侦听器缓存(cacheHandlers)

SSR优化(看心情更新)

diff算法优化

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值