Vue2和Vue3的主要区别及版本的过渡历史变迁

本文概述了Vue2从发布到停止维护的过程,重点关注了Vue3带来的新特性,如CompositionAPI、响应式底层改进、生命周期变化和更优的Tree-shaking。尽管Vue2即将终止支持,但两者之间的区别和Vue3的升级对于开发者来说至关重要。
摘要由CSDN通过智能技术生成

vue2简史:作为前端的主流框架之一的vue2发布停止维护经历了23个主要版本更新,Vue 2.7 是当前、同时也是最后一个 Vue 2.x 的次级版本更新。提供 18 个月的长期技术支持 (LTS:long-term support)。在此期间,Vue 2 将会提供必要的 bug 修复和安全修复,但不再提供新特性

Vue 2 的终止支持时间是 2023 年 12 月 31 日。在此之后,Vue 2 在已有的分发渠道 (各类 CDN 和包管理器) 中仍然可用,但不再进行更新,包括对安全问题和浏览器兼容性问题的修复等。

Vue3.0版本于2020年9月18日正式发布。这个版本带来了许多新功能和改进,包括减少开发人员配置工具的次数,并增加了许多内置功能。【vue3兼容vue2写法】。

【重点】:vue2和vue3的重点区别详解:

一、Composition API:

Vue.js 3 引入了 Composition API,这是一个新的 API 风格,允许开发者更好地组织和重用组件逻辑。相比 Vue.js 2 中的选项式 API,Composition API 更灵活,使得代码更易于维护。

二、Vue2Vue3两者响应式的底层实现不同:

1.Vue2底层是Object.defineProperty,使用Object.defineProperty()对数据进行劫持,也就是数据劫持结合订阅发布模式的方式实现,但有一定的局限性。缺点是它内部有一个this.$set去实现对数组更新的时候无法实现响应式。

2.Vue3底层是通过ES6Porxy, 使用Proxy代理,使用ref或者reactive将数据转化为响应式数据,能够更好地支持动态添加属性和删除属性。 除了对浏览器的兼容性不友好,但它解决了vue2底层实现的缺点,对数组、层级以及比deep的对象处理都很友好。

三、生命周期的区别:(全面对比总结)

Vue2生命周期(左)   VS   Vue3生命周期(右)

beforeCreate————初始化阶段比较—————setup() 

created ——————初始化阶段比较——————setup()

beforeMount ————初始化阶段比较————— onBeforeMount

mounted——————初始化阶段比较—————onMounted 

———————————————————————————————

beforeUpdate———更新阶段比较———onBeforeUpdate 

updated—————更新阶段比较————onUpdated 

activated————更新阶段比较———— onActivated 

deactivated ———更新阶段比较—————onDeactivated

———————————————————————————————

beforeDestroy———销毁阶段比较————onBeforeUnmount 

destroyed ————销毁阶段比较————onUnmounted 

结论:其实两者的生命周期钩子变化并不大,只是为了区分组合式API和响应式API 。

四、语法API的区别:

Vue2选项式API面向对象编程的语法 vue3:组合式API面向函数编程;没有this!!!

vue2图例:

vue3图例:

五、模板指令以及模板中的 v-model:

vue2中,v-for 优先级高于 v-if;      在vue3 中,v-if 优先级高于v-for;(相反)

vue2:

vue3:

v-if or v-for 的区别图------->>>>

 六、Tree-shaking 支持:

Vue.js 2: Tree-shaking 效果相对较差

Vue.js 3: 设计上更有利于 Tree-shaking减小打包体积

结束语总结:时代终究在变迁,不仅是人和物,前端框架亦是如此。vue2之所以强大是因为它随时代的进步迭代了很多版本在不断变迁,经典终究经典 但还是要迈步向前迎接vue3。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

CodeCrusader_wanqing

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

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

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

打赏作者

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

抵扣说明:

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

余额充值