Vue2升级Vue3不完全指南

3,662 阅读2分钟

Vue3已经成为了正式版本,Vue2也落下了帷幕,是时候对项目进行升级重构了。

注意📢:项目升级有风险,做好备份是当然!!!

每个项目的脚手架不同,升级步骤也有所差异,详细文档还请移步至☞Vue官方文档,下面的内容只针对与Vue cli 脚手架升级步骤,及可能遇到的一些问题做记录,方便后者直接升级,少走弯路。

相关文档

基于Vue-CLI升级工作

Vue2升级Vue3部分兼容文档

Vue2TOVue3代码转换工具gogocode

开始升级

  1. 查看自己项目的Vue cli版本号(对应的应该是@vue/cli 5.x 版本)
vue -V
  1. 升级Vue cli 版本
npm i -g @vue/cli
  1. 升级脚手架的依赖
vue upgrade
  1. 安装Vue最新版本和相同版本的@vue/compat
npm i vue @vue/compat -S
  1. 为了确保项目的依赖为最新的,需要删除项目中的node_modules 文件夹
  2. 在次安装项目的依赖(并确保安装的依赖是你最新的依赖)
npm i
  1. 运行项目,根据报错去解决问题
npm run serve
  1. 可能遇到的问题
问题解决办法备注
打开浏览器插件不兼容暂时注释OpenBrowserPlugin 插件不能正确使用
“css.requireModuleExtension"is not allowed修改vue.config.js配置requireModuleExtension:true//注释掉或者删除
options has an unknown property 'before'.These properties are valid:修改vue.config.js配置devServer配置不支持这种写法,需要注释掉
options has an unknown property 'hotOnly'.These properties are valid:修改vue.config.js配置devServer配置不支持这种写法,需要注释掉
  1. 目前项目能运行起来,需要安装gogocode 用来把Vue2的代码转换成Vue3的代码
npm i gogocode-cli -g
  1. gogocode官方文档支持命令更新项目依赖,(个人建议还是自己手动安装比较靠谱)
gogocode -s package.json -t gogocode-plugin-vue -o package.json
  1. 利用 gogocode把Vue2的代码升级到Vue3 (-s 后面是原文件的目录/文件名,-o 后面是输出的目录/文件名,如果两者相同,转换插件会覆盖你的代码,在此操作前请做好备份)
gogocode -s ./src -t gogocode-plugin-vue -o ./src-out
  1. 运行结束之后可以启动项目。根据提示修改部门不兼容的代码

有问题欢迎👏🏻批评指教