二十九. vue的vm和vc的一个重要的内置关系

二十九. vue的vm和vc的一个重要的内置关系,第1张

1. 这个重要的内置关系是什么?

VueComponent.prototype.__proto__ === Vue.prototype
这有张图是尚硅谷课程上的,非常好,如果失效再去上面找!

仔细看上图,其实是个vm和vc对象的内部结构,是个嵌套形式。仔细看!!!

prototype:显示原型属性
__proto__:隐式原型属性
显示原型属性和隐式原型属性都指向原型对象
看这些原型属性(prototype__proto__)不断的嵌套,很像java中class的继承,就像是super方法(好像就是。。没有具体研究过)

具体prototype__proto__到底是什么意思,我也不知道。。。

2. 为什么要有这个关系?

让组件实例对象(vc)可以访问到 Vue原型上的属性、方法。

3. 实战举例:

(1)全局事件总线Vue.prototype.$bus = this; //this是vm
(2)将api接口统一暴露,然后挂载到vm原型对象上,其他组件就可以无需导入,直接调用。

import API from '@/api'
Vue.prototype.$API = API
4. 拓展:vm和vc

https://blog.csdn.net/HSH541/article/details/124342333

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/725822.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-26
下一篇 2022-04-26

发表评论

登录后才能评论

评论列表(0条)

保存