Vue源码分析

最近在看Vue的源码,发现一个问题,在src/core/instance/index.js中作者定义了

function Vue (options) {
  this._init(options)
}
export default Vue;

这export出的是一个函数,然后在其他的地方大量使用了(Vue: GlobalAPI)

export function initAssetRegisters (Vue: GlobalAPI) {}
export function initGlobalAPI (Vue: GlobalAPI) {}

严格来说,GlobalAPI与Vue是两个不同的东西,但是GlobalAPI变量名却为Vue,容易造成阅读混淆,不知道大家怎么看待这个问题?

问题描述

问题出现的环境背景及自己尝试过哪些方法

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

你期待的结果是什么?实际看到的错误信息又是什么?

阅读 1.7k
1 个回答

GlobalAPI 是声名的一个Interface 类型对象,这样写是限定Vue的类型,就好像强类型语言一样,可以验证错误。比如flow.js的官网的例子
clipboard.png
个人理解,仅供参考

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题