解读vue.js的默认demo的components写法

使用webstorm创建一个vue.js的工程,创建完毕后,最后点击运行。会展示如下图所示的页面,表示vue的工程运行成功。

但是看到demo的代码的时候,发现跟网上教程(Runoob)的介绍有些不一样。主要难以理解的是在main.js文件里面。如下图,红框的components和template跟教程介绍的写法不一样。推算这个应该是高级表现手法。下面我就来用实验的方式,将红框的内容还原成正常的写法。

首先,el: '#app'这个的意思是,vue对象将html中的id=app的div绑定过来。比较难理解的就是components和template。两个整合成如下规范的形式见图。

这时浏览器会发现图片显示不了,如下

图片显示不了的问题可能是图片必须在static下才能访问。将图片拷贝过去,路径修改assets为static就好了。至于图片为什么没有显示在中央,是因为没有应用css的缘故(在app.vue里是有css的,所以默认的demo图片是居中的)。现在再将router加进来。见下图代码。

这时浏览器访问的页面和demo的就基本一致了,除了 css。效果如下图:

有了以上的实验,可以等效的知道demo的那个components和template的意义所在。下面再将demo改写成标准的形式如下图。值得注意的是。即使在index.html的<div></div>中追加<App1></App1>页面也没有任何变化。这是为什么呢?原因应该出在以App.vue为模板的话,会默认将模板html贴到index.html的绑定的<div>里面,且只能贴一份。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容