当前位置:网站首页 > Vue.js开发 > 正文

vue2项目升级为vue3项目(vue项目升级cli3)



使用命令:vue create projectName,按照提示进行创建

1)将原项目中的package.json下的dependencies节点的内容删掉vue、element-ui、vuex的节点,追加到新项目的package.json中,然后安装element-plus、pinia

npm install element-plus pinia

yarn add element-plus pinia

2)继续安装剩余依赖,执行npm install或yarn install

1)将原项目src目录的代码拷贝到新项目中,不要直接复制main.js。

2)修改main.js,根据自己代码的具体情况进行修改,此处为示例。

 
  

3)修改vue.config.js,根据自己代码的具体情况进行修改,此处为示例。

 
  

项目运行起来后,应该有一些报错,然后就逐个解决报错,这里列举一些,我在项目中遇到的,提供参考。因为vue3中也支持vue2的选项式的写法,所以大部分代码不需要做调整,只是element的组件部分需要根据最新的组件用法使用,需要调整的也不多。

4.1、修改状态管理store

原项目中的状态管理的部分store需要修改,使用vue3匹配的pinia进行状态管理,以下是用户相关的状态信息的示例代码。

 
  

代码中使用了this.$store的修改方法如下:

 
  

4.2、修改路由相关

 
  

4.3、路由信息报错的情况

1)使用useRoute来获取当前路由的信息,然后通过path属性获取完整的路径

 
  

2)监听路由

 
  

4.4、其他报错

1、组件中v-on="$listeners"移除,只需要保留v-bind="$attrs"

2、el-button组件,type="text"需要修改为 link,例如:

 
  

3、分页组件中的current-page.sync,修改为 v-model:current-page。

4、vue3没有全局过滤器,使用计算属性或者全局方法替代。

5、table组件,列的template中slot-scope删掉,换成#default。

6、通过ref获取子组件中的数据或方法,就在子组件中通过defineExpose将需要用到的数据或方法暴露出去,然后在父组件中使用ref去调用时就不会报错了。

Vue 3 迁移指南 | Vue 3 迁移指南

入门 | Vue Router

定义一个 Store | Pinia 中文文档

到此这篇vue2项目升级为vue3项目(vue项目升级cli3)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • pcie5.0显卡供电线(pcie5.0显卡供电线怎么插)2025-10-12 15:09:05
  • vue2和vue3有啥区别(vue2和vue3的兼容)2025-10-12 15:09:05
  • pcie4.0固态什么时候降价(pcie4.0固态值得买吗)2025-10-12 15:09:05
  • vue2项目换成vue3(vue2转vue3工具)2025-10-12 15:09:05
  • ubuntu 20.04升级内核(ubuntu20.04升级内核版本)2025-10-12 15:09:05
  • ubuntu21.04换源(ubuntu 18.04 换源)2025-10-12 15:09:05
  • vue路由守卫用法(vue路由守卫有什么用)2025-10-12 15:09:05
  • plsql注册码在哪里输入(plsql7.15注册码)2025-10-12 15:09:05
  • vue路由守卫面试题(vue3 路由守卫)2025-10-12 15:09:05
  • vuejs反编译(vue.js反编译)2025-10-12 15:09:05
  • 全屏图片