190115_main.js, App.vue, index.html关系

本文详细解析了Vue项目中main.js, App.vue, 和index.html之间的关系。阐述了main.js如何通过根实例挂载到index.html,并用template替换,以及App.vue组件如何包含路由视图,实现页面的渲染和切换。

main.js, App.vue, index.html关系

https://blog.youkuaiyun.com/a493556721/article/details/81979558

2018年08月23日 13:56:40 转的你死 阅读数:455

1.main.js

 
  1. import Vue from 'vue'

  2. import App from './App'

  3. ......

  4. new Vue({

  5. //挂载到index.html的<div id="app">

  6. el: '#app',

  7. //router对象,包含路由信息

  8. router,

  9. //在该根实例中注册App.vue中的App组件

  10. components: {"App": App},

  11. //模版,vue文档中说是会使用template来替换被挂载的节点,也就是index.html的<div id="app">

  12. template: '<App/>'

  13. })

2.App.vue

 
  1. <template>

  2. <div id="app" v-cloak>

  3. <!--被匹配成功的组件将会被渲染到这里-->

  4. <router-view/>

  5. </div>

  6. </template>

  7.  
  8. <script>

  9. export default {

  10. name: 'App'

  11. }

  12. </script>

3.index.html

 
  1. <!DOCTYPE html>

  2. <html>

  3. <body>

  4. <!--被main.js挂载的标签-->

  5. <div id="app"></div>

  6. </body>

  7. </html>

说明:main.js中的根实例会挂载到index.html中的<div id="app">,且用template替换,即替换为<App></App>. 由于根实例注册了App组件,所以这标签就是App.vue组件。由于App.vue中含有<router-view/>,所以路由匹配成功的页面都在这里进行渲染和切换。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值