首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
学习准备
变化侦测
Object的变化侦测
Array的变化侦测
Vue中的虚拟DOM
Vue中的Dom-Diff
更新子节点
优化更新子节点
模板编译基础
模板解析(整体流程)
模板解析(HTML解析器)
模板解析(文本解析器)
优化阶段
代码生成阶段
生命周期概述
初始化阶段(new Vue)
初始化阶段(initLifecycle)
初始化阶段(initEvents)
初始化阶段(initInjections)
初始化阶段(initState)
模板编译阶段
挂载阶段
销毁阶段
数据相关的方法
事件相关的方法
生命周期相关的方法
全局API分析
过滤器用法
过滤器工作原理
解析过滤器
自定义指令
keep-alive
当前位置:
首页>>
技术小册>>
Vue源码完全解析
小册名称:Vue源码完全解析
## 1. 前言 希望这本小册可以帮助大家一方面开阔自己的知识视野,另一方面也希望这些文字能够带给他人些许帮助。 ## 2. 学习规划 ### 2.1 源码学习目录 本项目所剖析的`Vue.js`源码版本是目前最新的版本,版本号为 v2.6.11 ,其代码目录如下: ```bash ├─dist # 项目构建后的文件 ├─scripts # 与项目构建相关的脚本和配置文件 ├─flow # flow的类型声明文件 ├─src # 项目源代码 │ ├─complier # 与模板编译相关的代码 │ ├─core # 通用的、与运行平台无关的运行时代码 │ │ ├─observe # 实现变化侦测的代码 │ │ ├─vdom # 实现virtual dom的代码 │ │ ├─instance # Vue.js实例的构造函数和原型方法 │ │ ├─global-api # 全局api的代码 │ │ └─components # 内置组件的代码 │ ├─server # 与服务端渲染相关的代码 │ ├─platforms # 特定运行平台的代码,如weex │ ├─sfc # 单文件组件的解析代码 │ └─shared # 项目公用的工具代码 └─test # 项目测试代码 ``` 从上面的目录结构可以看出,`Vue`的整个项目包含了类型检测相关、单元测试相关、与平台无关的核心代码以及跨平台运行的相关代码。 由于我们只是学习`Vue.js`的设计思想以及代码实现的相关逻辑,所以我们暂不去关心类型检测、单元测试以及特定平台运行等相关逻辑实现,仅关注它的核心代码,即`src/core`和`src/complier`这两个目录下的代码,并且接下来后续的学习也都是只在这两个目录的范围之内。 ### 2.2 学习路线 在学习之前,我们需要先制定一个学习路线,循序渐进的学习,这样不至于一头雾水,无处下手。后面的学习路线如下: 1. 变化侦测篇 学习`Vue`中如何实现数据的响应式系统,从而达到数据驱动视图。 2. 虚拟 DOM 篇 学习什么是虚拟 DOM,以及`Vue`中的`DOM-Diff`原理 3. 模板编译篇 学习`Vue`内部是怎么把`template`模板编译成虚拟`DOM`,从而渲染出真实`DOM` 4. 实例方法篇 学习`Vue`中所有实例方法(即所有以`$`开头的方法)的实现原理 5. 全局 API 篇 学习`Vue`中所有全局`API`的实现原理 6. 生命周期篇 学习`Vue`中组件的生命周期实现原理 7. 指令篇 学习`Vue`中所有指令的实现原理 8. 过滤器篇 学习`Vue`中所有过滤器的实现原理 9. 内置组件篇 学习`Vue`中内置组件的实现原理 ### 2.3 学习输出 通过一步步的学习,在学习过程中输出以下三个东西: - 以文字形式记录学习过程; - 为`clone`下来的`Vue`源码添加尽可能详细的注释; - 做一份思维导图,以宏观角度总览源码;
下一篇:
变化侦测
该分类下的相关小册推荐:
Vue.js从入门到精通(二)
TypeScript和Vue从入门到精通(二)
TypeScript和Vue从入门到精通(一)
Vue.js从入门到精通(四)
Vue3技术解密
Vue.js从入门到精通(一)
移动端开发指南
TypeScript和Vue从入门到精通(四)
TypeScript和Vue从入门到精通(五)
vue项目构建基础入门与实战
Vue面试指南
Vue原理与源码解析