javascript - 关于vue脚手架的写法的一个疑问!
黄舟
黄舟 2017-04-11 13:12:33
[JavaScript讨论组]
import App from './App'

new Vue({
  el: '#app',
  router,
  template: '',
  components: { App }
})

这里不是已经把App.vue引入进来在components: {App}这里当组件使用了吗?而且App.vue里面也有template标签啊,为什么还要在这里加template: ''?(删掉好像还渲染不出东西,并且也没看见哪里有使用这个标签)

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回复(4)
怪我咯

你只引入了 App 组件,但并没有渲染或者说使用它。

                                                    --QQ群网友
                                                    

感觉上面这个说法很好理解

或者这样使用

<p id="app">
    <App><App/>
</p>
阿神

这里的template就是一个模板了,就是将<App/>挂载到#app这个元素,<App/>本身是一个组件。

大家讲道理

谢邀。
首先你要去理解 vue component
把TA看成一颗树,类似DOM树的关系。
你这个代码段,应该是入口文件里面的。
也就是申明 组件树的 根组件。

html
  _ body
    - p#app
        App
        

vue 里面的 组件渲染,你可以理解成 占位符替换。也就需要有占位符的该你那,<App/>就是占位符
上面的App的位置,最终渲染后就替换成你App.vue 组件里面定义的template 内容。

另外,App.vue 这种文件是 vue 为了方便整合 组件化设计的一种文件格式。
然后通过 vue-loader 去预加载.vue 文件。解析里面的 template,script,style等内容。最终也会转换成标准的vue component定义形式。

Vue.component('App', {
  template: '<p>我是App组件里面的内容</p>',
  data: function () {
    return {
    }
  }
})
PHPz

一个字符串模板作为 Vue 实例的标识使用。模板将会 替换 挂载的元素。挂载元素的内容都将被忽略,除非模板的内容有分发 slot。
App.vue是这个程序的主程序,所有的程序都是基于它。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号