补:Vue--组件
以.vue创建出来的文件,那就只能包含一个组件,这即是单文件组件,其中包含了功能所需的html,css,js
.vue中有特殊的标签,即:

利用Vue创建组件时要有 Vue.extend({}) ,{}里面照样是配置对象,我们可以用const 组件名称=Vue.extend({})来接收实例
组件实质上是一个构造函数,我输出了一下组件,在控制台中是这个,这明显是一个名为VueComponent 的构造函数

以后我们将VueComponent的实例对象称为vc
关于写在vc中的配置对象其this指向问题:

使用构造函数当然要new ,但是我们没有new 过,原因如下:

1.Vue.extend({})中,与Vue({})很像,但 其中没有 el:"",因为组件就像一块砖,哪里需要哪里搬,不要过早与某个建立起关系
2.data其一定要写成函数形式: data(){ return {} },因为组件是被很多人用的,不可能里面数据一改,则别人用时,数据也变了
3.vue.extend()在.vue文件中可以删除,直接写{},这也是为什么有
export default{}的形式
最开始是
export default const vc=vue.extend({})
省略后就是export default{}的形式


说一下这个components,components是注册组件的存在,其在组件中写的是什么,VueComponent形成的实例对象就叫什么名字,
用组件标签时也是用的这个名字:如我上面的那个组件叫school ,所以我用的时候也叫<<school>><</school>>
在开发者工具里,vue帮我们默认这个组件叫school,当然我们可以在组件中依靠name:,更改其在开发者工具里的名字:

《关于组件命名》

如图:我在student.vue中给这个标签命名为student,即name:student,则在开发者工具里,vue帮我们这个组件叫student,
但是真正在使用这个组件时,还是在component中其名为准,以下是在component中命名的规则:

《关于组件嵌套》

在这张图上我们能够看到,也有组件领导组件的存在

即如图,组件com_2是领导com_1的存在;com_1的组件模块标签也写在com_2中
那么出现了app这个组件,这个组件是一人之上,万人之下,只有其与Vue交流,app再管理其他全部组件,即让Vue中更加简洁了


浙公网安备 33010602011771号