Vue2.6.x源码阅读 - 4.源码阅读-platform
阅读学习
Vue
源码/src
目录下的platform
文件夹内的代码
熟悉完工具类方法后继续从Vue的入口继续入手。从2.目录结构分析中,已经简单了解到
platform
就是整个Vue工程的入口处。兼容不同平台来对Vue做不同的启动处理。
Vue Web端入口
通过入口文件中引入的
Vue
找到网页端下的构造函数所在的位置src/platform/web/runtime/index.js
。查看其引入的内容,可以发现该入口下依旧引入了Vue
,故可知当前文件则是在Web端下进行的封装。继续看后续的代码。小结一下,Web端下的Vue入口文件做的工作主要为:
引入了
core
中的Vue
配置了用于转化虚拟DOM为真实DOM的
__patch__
方法定义了原始的
$mount
方法
runtime vs runtime-with-compiler
上文所述的入口文件,为Web端通用的入口文件,在Web端下依旧存在五种运行模式,出去服务端渲染模式,重点部分为
runtime
与runtime-with-compiler
两种模式。官网有对这两种模式的区别做过解释。两种模式的入口文件分别对应于
src/platform/web/entry-runtime.js
、src/platform/web/entry-runtime-with-compiler
两份文件。根据两份文件我们可以看出,单纯对运行时(runtime)仅仅引入了上文提及的Vue入口文件。而带编译器的运行时,内容更为复杂,主要为扩写了一个扩展的$mount
方法(与“原始”的$mount
方法做区分,该方法于6.源码阅读-core-组件挂载进行解析)。也因此可知,带编译器的运行的内容更多,这也是官网推荐性能更好的“运行时”模式的原因。
最后更新于