Vue.js设计与实现

Vue.js设计与实现

编辑推荐

本书以由繁入简的方式,介绍如何实现Vue.js中的各个功能板块。

内容简介

本书共18章,分为6篇,主要内容包括:框架设计概览、响应系统、渲染器、组件化、编译器和服务端渲染等。

作者简介

霍春阳(HcySunYang)
Vue.js官方团队成员,专注于Web研发领域,是Vue.js 3的核心贡献者之一,Vue.js文档生成工具Vuese的作者,技术社区活跃者,曾撰写大量颇受好评的技术博客。

章节目录

版权信息

前言

第一篇 框架设计概览

第1章 权衡的艺术

1.1 命令式和声明式

1.2 性能与可维护性的权衡

1.3 虚拟 DOM 的性能到底如何

1.4 运行时和编译时

1.5 总结

第2章 框架设计的核心要素

2.1 提升用户的开发体验

2.2 控制框架代码的体积

2.3 框架要做到良好的 Tree-Shaking

2.4 框架应该输出怎样的构建产物

2.5 特性开关

2.6 错误处理

2.7 良好的 TypeScript 类型支持

2.8 总结

第3章 Vue.js 3的设计思路

3.1 声明式地描述 UI

3.2 初识渲染器

3.3 组件的本质

3.4 模板的工作原理

3.5 Vue.js 是各个模块组成的有机整体

3.6 总结

第二篇 响应系统

第4章 响应系统的作用与实现

4.1 响应式数据与副作用函数

4.2 响应式数据的基本实现

4.3 设计一个完善的响应系统

4.4 分支切换与 cleanup

4.5 嵌套的 effect 与 effect 栈

4.6 避免无限递归循环

4.7 调度执行

4.8 计算属性 computed 与 lazy

4.9 watch 的实现原理

4.10 立即执行的 watch 与回调执行时机

4.11 过期的副作用

4.12 总结

第5章 非原始值的响应式方案

5.1 理解 Proxy 和 Reflect

5.2 JavaScript 对象及 Proxy 的工作原理

5.3 如何代理 Object

5.4 合理地触发响应

5.5 浅响应与深响应

5.6 只读和浅只读

5.7 代理数组

5.8 代理 Set 和 Map

5.9 总结

第6章 原始值的响应式方案

6.1 引入 ref 的概念

6.2 响应丢失问题

6.3 自动脱 ref

6.4 总结

第三篇 渲染器

第7章 渲染器的设计

7.1 渲染器与响应系统的结合

7.2 渲染器的基本概念

7.3 自定义渲染器

7.4 总结

第8章 挂载与更新

8.1 挂载子节点和元素的属性

8.2 HTML Attributes 与 DOM Properties

8.3 正确地设置元素属性

8.4 class 的处理

8.5 卸载操作

8.6 区分 vnode 的类型

8.7 事件的处理

8.8 事件冒泡与更新时机问题

8.9 更新子节点

8.10 文本节点和注释节点

8.11 Fragment

8.12 总结

第9章 简单Diff算法

9.1 减少 DOM 操作的性能开销

9.2 DOM 复用与 key 的作用

9.3 找到需要移动的元素

9.4 如何移动元素

9.5 添加新元素

9.6 移除不存在的元素

9.7 总结

第10章 双端Diff算法

10.1 双端比较的原理

10.2 双端比较的优势

10.3 非理想状况的处理方式

10.4 添加新元素

10.5 移除不存在的元素

10.6 总结

第11章 快速Diff算法

11.1 相同的前置元素和后置元素

11.2 判断是否需要进行 DOM 移动操作

11.3 如何移动元素

11.4 总结

第四篇 组件化

第12章 组件的实现原理

12.1 渲染组件

12.2 组件状态与自更新

12.3 组件实例与组件的生命周期

12.4 props 与组件的被动更新

12.5 setup 函数的作用与实现

12.6 组件事件与 emit 的实现

12.7 插槽的工作原理与实现

12.8 注册生命周期

12.9 总结

第13章 异步组件与函数式组件

13.1 异步组件要解决的问题

13.2 异步组件的实现原理

13.3 函数式组件

13.4 总结

第14章 内建组件和模块

14.1 KeepAlive 组件的实现原理

14.2 Teleport 组件的实现原理

14.3 Transition 组件的实现原理

14.4 总结

第五篇 编译器

第15章 编译器核心技术概览

15.1 模板 DSL 的编译器

15.2 parser 的实现原理与状态机

15.3 构造 AST

15.4 AST 的转换与插件化架构

15.5 将模板 AST 转为 JavaScript AST

15.6 代码生成

15.7 总结

第16章 解析器

16.1 文本模式及其对解析器的影响

16.2 递归下降算法构造模板 AST

16.3 状态机的开启与停止

16.4 解析标签节点

16.5 解析属性

16.6 解析文本与解码 HTML 实体

16.7 解析插值与注释

16.8 总结

第17章 编译优化

17.1 动态节点收集与补丁标志

17.2 Block 树

17.3 静态提升

17.4 预字符串化

17.5 缓存内联事件处理函数

17.6 v-once

17.7 总结

第六篇 服务端渲染

第18章 同构渲染

18.1 CSR、SSR 以及同构渲染

18.2 将虚拟 DOM 渲染为 HTML 字符串

18.3 将组件渲染为 HTML 字符串

18.4 客户端激活的原理

18.5 编写同构的代码

18.6 总结

作者简介

Vue.js设计与实现是2022年由人民邮电出版社出版,作者霍春阳(HcySunYang)。

得书感谢您对《Vue.js设计与实现》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

你可能喜欢
Web前端学习笔记:HTML5+CSS3+JavaScript 电子书

由浅及深,讲解Web前端开发所需的知识。
HTML5+CSS3Web开发案例教程(在线实训版) 电子书

本书紧密围绕前端开发工程师在工作中会遇到的实际问题和相应的解决方法与技术层层展开,系统介绍使用HTML5和CSS3进行前端开发的知识内容和实战技巧。
学Python,不加班——轻松实现办公自动化 电子书

1.深挖国内职场人群痛点,利用Python实现办公自动化。2.结合实际案例讲解编程和数据库知识,让读者快速理解掌握。3.完整行业案例全流程讲解,全方位解读Python在自动化办...
HTML+CSS+JavaScript网页制作:从入门到精通(第4版) 电子书

本书从零开始,全面讲解了开发网页的全过程。
HTML5+CSS3+JavaScriptWeb前端开发案例教程 电子书

本书适合HTML5爱好者和初、中级的HTML5网站前端开发人员参考使用。
数字图像处理与Python实现 电子书

本书采用通俗易懂的语言对数字图像处理的相关概念进行阐述,同时穿插较为典型的Python小程序,使读者能够快速掌握数字图像处理的相关概念和技术。
网站设计 开发 维护 推广 从入门到精通 电子书

畅销图书全新升级——经久不衰的经典教程震撼升级,诠释网页制作的新技术。实例典型轻松易学——以实例方式讲解理论知识,直观、具体,有助于快速上手。边学边做学以致用——涵盖网页制作中...