├── index.js
├── init.js
├── lifecycle.js
├── render.js
├── state.js
└── compiler
├── index.js
├── generate.js
├── parse-html.js
└── observe
├── index.js
├── array.js
├── watcher.js
└── utils
├── index.js
└── vdom
├── create-element.js
└── patch.js
Vue的入口文件,当实例化Vue的时候,会进行初始化操作。内部会调用各种mixin方法给Vue的原型上添加方法
- initMixin:在Vue原型上添加初始化方法
- renderMixin:在Vue原型上添加渲染方法,调用render方法拿到VNode --> render.js
- lifecycleMixin:在Vue原型上添加_update方法,将VNode转换成真实DOM --> lifecycle.js
- compiler 将template字符串转换成ast语法树 --> 生成render方法
- observe 数据观测,响应式原理的实现
- vdom 调用render方法生成VNode,以及将VNode渲染成真实DOM