欢迎大家关注我的技术博客:style'me的个人博客
以下关于vue3x项目创建到启动的一些变化,供大家参考,如果您准备使用3x版本作为项目开发,相关配置建议您升级到更高的版本,比如:
1、在3x版本中如果您使用element-ui,建议您选择element-plus,这是专门为vue3x定制的版本
2、vue-router建议您升级到4.0版本以上,更好的兼容vue3x
3、vuex建议您升级到4.0版本以上,更好的兼容vue3x
4、若您想在项目中使用sass,建议您安装sass和sass-loader即可,sass-loader版本建议在10.1.1版本,这样才能更好的兼容vue3x
/*安装element-plus*/
cnpm install element-plus -S
/*安装路由4.0版本以上*/
npm install vue-router@4
/*安装vuex4.0版本以上*/
npm install vuex@4
/*安装sass和sass-loader*/
npm install sass sass-loader@10.1.1
1、安装区别
/*2x vue项目脚手架安装方法*/
vue int webpack projectName
/*3x vue项目脚手架安装方法*/
vue create projectName
2、项目挂载区别
/*2x main.js挂载*/
import Vue from "vue"
import App from "./App.vue"
new Vue({
render: h => h(App)
}).$mount("#app")
/*3x main.js挂载*/
import { createApp } from "vue"
import App from "./App.vue"
createApp(App).mount("#app")
3、插件挂载和全局注册使用区别
/*2x 插件挂载和全局注册使用*/
import Vue from "vue"
import App from "./App.vue"
Vue.use(ElementUI, axios,animated)
/*2x注册全局插件使用prototype*/
Vue.prototype.$echarts = echarts
new Vue({
render: h => h(App)
}).$mount("#app")
/*3x 插件挂载和全局注册使用*/
import { createApp } from "vue"
import App from "./App.vue"
const app = createApp(App)
/*3x注册全局插件使用app.config.globalProperties*/
app.config.globalProperties.$echarts = echarts
app.use(ElementPlus,{locale})
app.use(router)
app.use(store)
app.mount("#app")
下面图片是vue2x和vue3x再项目挂载和插件使用上得一些api的变动
4、路由注册创建区别
/*2x 路由注册创建*/
import Vue from "vue"
import VueRouter from "vue-router"
/*RouterPage 是我自己的路由管理文件*/
import RouterPage from "./RouterPage/"
Vue.use(VueRouter)
const router = new VueRouter({
mode: "hash",
base: process.env.BASE_URL,
})
router.addRoutes([...RouterPage]);
export default router
/*3x 路由注册创建*/
import {createRouter,createWebHistory,createWebHashHistory} from "vue-router"
import RoutersPage from "@/router/RouterPage/index"
import RouterBase from "@/router/RouterPage/base"
const router = createRouter({
history:createWebHashHistory(),
scrollBehavior: () => ({ y: 0 }),
routes:[...RoutersPage,...RouterBase]
})
export default router
下面的图片是vue-router的3x和4x版本的api对应变化
5、vuex创建区别
/*2x vuex创建*/
import Vue from "vue"
import Vuex from "vuex"
export default new Vuex.Store({
state: {},
mutations: {},
actions: {},
modules: {}
})
/*3x vuex创建*/
import { createStore } from "vuex";
export default createStore({
state: {},
mutations: {},
actions: {},
modules: {}
})
项目创建配置到启动基本涉及这些需要注意的点,但是在使用过程中也有很多变化,比如:
在3x版本中如果 v-if 和 v-for 同时使用 v-if 的优先级永远是最高的,再比如:访问子组件的 this.$children方法被取消等等,这些在项目开发中经常用到,如果您有兴趣可以移步与官网更深入的学习,vue3x学习 https://v3.cn.vuejs.org/guide...
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。