VUE 3.0 学习探索入门系列
VUE 3.0 学习探索入门系列计划用一个月把 Vue 3 摸一遍(当时也预期快 Release 了)。从 2019 年尤雨溪在会上反复讲 3.0 特性,到写稿时的 2020.3.21,等了一年多还没正式发布,热情容易耗尽。
写这组系列,是想趁还剩一点兴趣,快速、全面地看一眼 Vue 3.x。等完全没兴趣了再被迫上手,它就只剩工具属性。本文对应系列第 5 篇的核心判断:有没有必要升级到 Vue3.0?如果要升级,该如何升级?
原文链接:https://juejin.im/post/5e67061de51d452713552a9f。
一、系列目录
-
总览(1) -
回顾 vue2 辉煌一生(2) -
用几个 demo 认识 vue3(3) -
vue2.x / React / vue3.x 简单横评(4) -
纠结要不要升级到 Vue3.0?该如何升级?(5) -
生命周期和 Composition API 核心语法(6) -
Vue3.x 令人期待的新特性(7)
二、Vue2.x 没必要升级,Vue3.x 有必要用
先解释为什么没必要把现有 Vue2.x 项目直接升级。当时看来真正有吸引力的只有两点,而且都还没到「不升级就活不下去」的程度:
-
对 TypeScript 更友好。Vue2.x 里喜欢 TS 的人已经习惯了装饰器写法,虽然要额外引包,但能用。示例见横评文。 -
新增 Composition API,且兼容 2.x:单独引入 @vue/composition-api就能缓解 2.x 里那几处难题。说明见什么难题?。
直接升 3.x 要做的事更多:生态库(vue-router、vuex、ElementUI / ViewUI / AntDesignVue)要重填坑;3.x 不再默认导出那个全局对象,项目里所有 Vue.xxx 都得改,沉淀在公司底层库里的写法风险不小;横向小组维护几十个项目,改一轮、测一轮周期很长;测试脚本、CI/CD 也可能要动。
再解释为什么Vue3.x 仍然值得用:兼容 2.x 约 95% 特性,上手快的优点还在;TS 更贴行业趋势;Composition API 可能吸引一部分 React 用户;生态盘子已经足够大,不再只是「个人项目」。
| 场景 | 建议 |
|---|---|
| 新团队、新项目 | 正式 Release 且生态跟上(约半年)后直接上 3.x,并学习 TS |
| 成熟团队、已有基建 | 先 Vue2.x + @vue/composition-api 过渡,不建议断崖升级 |
| 框架本身 | 不要 2.x 原地升级,新起炉灶用 3.x 做工程模板 |
三、一个团队的过渡排期
-
半年内按兵不动,继续 Vue2.x,等 @vue/composition-api到 v3.2.0 以上。 -
项目模板先升级为 Vue2.x + Composition API,支持 3.x 新语法,并制定使用规范。 -
一年后基于 Vue3.x 全新搭建基础框架(全面 TS),不基于老框架升级,同时写 3.x 模板规范。 -
老项目继续 2.x + composition-api 维护到退役,或被新工程替换。
技术变革对自己也是革命。作者经历过 servlet → spring → spring mvc,jsp → jquery + bootstrap,jquery → avalon(require.js + gulp),avalon → vue2.x(webpack)。还记得 jQuery 的口号:write less, do more。官网还在:https://jquery.com/。
四、和「Vue3 与我无关」说两句
有人会说:Vue2.x 用得好好的,干嘛学 3、升 3?这种心态常见于不求上进、把工作只当饭碗、很少总结分享、习惯 Ctrl+C/V 的人。新技术存在一定有它的道理;不能盲目追随,也不能自我封闭。对 Vue3.x 或其它新技术,先了解,再选择。
一句话总结:存量 Vue2 项目不必断崖升级,用 composition-api 过渡;新项目等生态跟上后直接上 Vue3,并新起工程模板而不是原地翻新。
转载请注明来源:VUE 3.0 学习探索入门系列







