2.x中,main.js是vue项目的入口文件,引入构造函数Vue,然后new Vue传入配置项生成vm实例,如下:

import Vue from "vue"
import App from "./App.vue"
import router from "./router"
import store from "./store"

new Vue({
    router,
    store,
    render: h => h(App) 
}).$mount("#app")

Vue3 中,通过使用 createApp 函数来创建应用,使用vue库的createApp方法传入基组件生成vm,然后再调用vmmount方法传入选择器将实例挂载在dom节点上。

语法:

const app = Vue.createApp({ /* 选项 */ })

传递给createApp的选项用于配置跟组件,也就是入口文件。

// 先导入createApp模块
import { createApp } from 'vue';
import App from './App.vue';

// createApp 创建一个APP实例,将入口文件放进去,参数是根组件(HelloVueApp),在使用 mount() 挂载应用时,该组件是渲染的起点。
createApp(App).mount('#app');

实例:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Vue 练习</title>
<script src="https://unpkg.com/vue@next"></script>
</head>
<body>
<div id="app" class="demo">
  {{ message }}
</div>

<script>
const HelloVueApp = {
  data() {
    return {
      message: 'Hello,this is Vue3!'
    }
  }
}

Vue.createApp(HelloVueApp).mount('#app')
</script>
</body>
</html>

运行结果:
在这里插入图片描述

以上代码实现了: mount('#app')Vue 应用 HelloVueApp 挂载到 <div id="app"></div>DOM元素中。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐