Vue2.5.16源码解读二:从入口文件进行阅读

接上回,我们确认了一个入口文件 src/platforms/web/entry-runtime-with-compiler.js ,将该文件代码折叠如下图所示,方便一览全局:

可以看到这里 import Vue from './runtime/index' 引入了一个 Vue ,然后定义了下 Vue.prototype.$mount 和 Vue.compile ,看Vue源码之前最好是先过一下Vue的官方文档,这里 Vue.prototype.$mount 是一个关在Vue原型链上的属性,所以通过 new Vue() 创建的Vue的实例都会继承这个 $mount 方法,在看这个方法的作用之前,因为看过了官方文档,并且我之前用了两年的Vue了,所以先猜测下这个大概跟Vue组件生命周期里的 mounted 钩子可能有关系,可能是这个 $mount 方法执行完后就会触发组件生命周期里的 mounted 这个钩子里写的程序。现在详细看下相关代码:

好了,这篇文章对入口文件的分析就写到这里,后续我们将以入口文件为线索展开阅读其他部分的代码。打算看一下 Vue.compile = compileToFunctions 这里的 compileToFunctions 方法,以及 import Vue from './runtime/index' 这里导入的 Vue 。

发表评论

电子邮件地址不会被公开。 必填项已用*标注