![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Vue.js源码学习
文章平均质量分 84
Echo_king
这个作者很懒,什么都没留下…
展开
-
什么是Flow
认识 Flow认识 FlowFlow 是 facebook 出品的 JavaScript 静态类型检查工具。Vue.js 的源码利用了 Flow 做了静态类型检查,所以了解 Flow 有助于我们阅读源码。为什么用 FlowJavaScript 是动态类型语言,它的灵活性有目共睹,但是过于灵活的副作用是很容易就写出非常隐蔽的隐患代码,在编译期甚至看上去都不会报错,但在运行阶段就可能出现各种奇怪的 b...原创 2018-06-16 17:45:55 · 769 阅读 · 0 评论 -
Vue.js 源码目录设计
Vue.js 源码目录设计Vue.js 的源码都在 src 目录下,其目录结构如下。src├── compiler # 编译相关 ├── core # 核心代码 ├── platforms # 不同平台的支持├── server # 服务端渲染├── sfc # .vue 文件解析├── shared ...原创 2018-06-17 19:53:57 · 245 阅读 · 0 评论 -
Vue.js 源码构建
Vue.js 源码是基于 Rollup 构建的,它的构建相关配置都在 scripts 目录下。构建脚本通常一个基于 NPM 托管的项目都会有一个 package.json 文件,它是对项目的描述文件,它的内容实际上是一个标准的 JSON 对象。我们通常会配置 script 字段作为 NPM 的执行脚本,Vue.js 源码构建的脚本如下:{ "script": { "build": "nod...原创 2018-07-03 15:51:37 · 422 阅读 · 0 评论 -
Vue入口
从入口开始我们之前提到过 Vue.js 构建过程,在 web 应用下,我们来分析 Runtime + Compiler 构建出来的 Vue.js,它的入口是 src/platforms/web/entry-runtime-with-compiler.js:/* @flow */ import config from 'core/config'import { warn, cached } from...转载 2018-07-03 17:11:38 · 1603 阅读 · 0 评论 -
new Vue 发生了什么
new Vue 发生了什么从入口代码开始分析,我们都知道,new 关键字在 Javascript 语言中代表实例化是一个对象,而 Vue 实际上是一个类,类在 Javascript 中是用 Function 来实现的,来看一下源码,在src/core/instance/index.js 中。function Vue (options) { if (process.env.NODE_E...原创 2018-07-30 17:24:01 · 1889 阅读 · 0 评论