Vue学习笔记(11)-Vue中的组件(2)
1.组件之间的嵌套关系:
- 话不多说直接上代码:
代码解析:
<body> |
运行结果展示:
2.Vuecomponent构造函数的讲解(重点):
- (1).组件的本质是一个名为VueComponent的构造函数,且不是程序员定义的,是Vue.extend生成的。
- (2).我们只需要写
或 ,Vue解析时会帮我们创建school组件的实例对象,即Vue帮我们执行的:new VueComponent(options)。 - (3).特别注意:每次调用Vue.extend,返回的都是一个全新的VueComponent!!!!
- (4).关于this指向:
- 1.组件配置中:
- data函数、methods中的函数、watch中的函数、computed中的函数 它们的this均是【VueComponent实例对象,理论上与vm非常的相似】。
- 2.new Vue(options)配置中:
- data函数、methods中的函数、watch中的函数、computed中的函数 它们的this均是【Vue实例对象】。
- 1.组件配置中:
- (5).VueComponent的实例对象,以后简称vc(也可称之为:组件实例对象)。
- (6).vc和 vm的区别:
- 不严谨来说的话,两者是可以划等号的,因为vc有的属性,方法,vm都有而且基本是一致的,但是vm有一个el属性用于决定为那个容器服务,但是vc没有el属性(硬写会报错),可以这样认为, vc 相当于 小型的 vm
代码解析:
<!-- 准备好一个容器--> |
运行结果展示:
3.一个重要的内置关系(vc与vm)
(涉及到构造函数的原型与原型链的知识,翻查以往博客复习)
- (1).一个重要的内置关系:VueComponent.prototype.proto === Vue.prototype
- (2).为什么要有这个关系:让组件实例对象(vc)可以访问到 Vue原型上的属性、方法。
图解如下:
代码解析:
<script type="text/javascript"> |
运行结果展示:
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0许可协议。转载请注明来自 肥林の仓库