拥抱Vue3 (一) main.js的变化

 我们还是尝试使用Vue-cli来创建Vue3的项目,需要注意的是你的Vue-cli版本需要在@4.15.0以上才能支持Vue3项目的创建。在创建项目之前可以在cmd中输入Vue -v来查看cli的版本。

创建好项目后和Vue2时候一样,首先来看看整个项目的入口文件main.js。

import { createApp } from 'vue'
import App from './App.vue'

createApp(App).mount('#app')

 我们可以发现,引入的不再是Vue构造函数了,而是一个名为createApp的工厂函数。试着去回想一下以前的写法,并且将生成的这三行代码进行拆分做个对比。

import { createApp } from 'vue'
import App from './App.vue'

// Vue 3 
const app = createApp(App)
app.mount('#app')

// createApp(App).mount('#app')

// Vue 2
const vm = new Vue({
    render: h => h(App)
})
vm.$mount('#app')

经过拆解后对比发现,这两者看起来功能相似,但是app比vm更"轻",通过打印app可以发现,它的身上没有vm那么多的属性,没有了众多$api挂在身上。这也就是为什么Vue3比Vue2更快,效率更高的众多原因之一。

 在控制台中我们不难看到以前熟悉的directive自定义指令、mixin混入技术,也看到了mount、unmount这似曾相识却又不是生命周期的方法。我的专栏中后续将逐步更新这些内容,并且介绍他们和Vue2之间的差别。

 

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
引用\[1\]中提供了一个配置Vue3项目的main.js的示例代码。在这个示例中,首先需要安装Element Plus的图标库,然后在main.js中引入并配置这些图标。接下来,需要安装Vue Router和Vuex,并在main.js中引入和配置它们。最后,使用createApp函数创建Vue实例,并通过use方法挂载路由、状态管理和Element Plus插件。 引用\[2\]中提供了一个关于配置Vue3项目的main.js的顺序和注意事项。在这个示例中,首先需要按照顺序依次引入和配置路由、状态管理和Element Plus插件。注意,顺序不能乱,否则可能会导致报错。 根据以上引用内容,可以得出Vue3的main.js配置的步骤如下: 1. 安装Element Plus的图标库:npm install @element-plus/icons-vue 2. 在main.js中引入并配置Element Plus的图标库,示例代码如下: ```javascript import * as ElementPlusIconsVue from '@element-plus/icons-vue' const app = createApp(App) for (const \[key, component\] of Object.entries(ElementPlusIconsVue)) { app.component(key, component) } ``` 3. 安装Vue Router:npm install vue-router@4 4. 安装Vuex:npm install vuex@next --save 5. 在main.js中引入并配置Vue Router和Vuex,示例代码如下: ```javascript import { createApp } from 'vue' import App from './App.vue' import router from './router/index' import store from './store/index' const app = createApp(App) app.use(router).use(store) ``` 6. 引入并配置Element Plus插件,示例代码如下: ```javascript import ElementPlus from 'element-plus' import 'element-plus/dist/index.css' app.use(ElementPlus) ``` 7. 最后,使用mount方法将Vue实例挂载到DOM元素上,示例代码如下: ```javascript app.mount('#app') ``` 请注意,以上步骤仅为示例,实际配置可能会根据项目需求有所不同。 #### 引用[.reference_title] - *1* *2* [Vue3创建项目(四)main.js配置,避坑指南](https://blog.csdn.net/zhangxueyou2223/article/details/128144109)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [vue3在main.js里面定义全局函数,然后其他页面使用](https://blog.csdn.net/qq_33769914/article/details/126101917)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值