生成代码-AST如何生成可运行的代码?-下篇

书接上文,我们已经知道了在 AST 转换后,会执行 generate 函数生成代码,而 generate 主要做五件事情:创建代码生成上下文,生成预设代码,生成渲染函数,生成资源声明代码,以及生成创建 VNode 树的表达式。这节课我们继续分析,来看生成创建 VNode 树的表达式的过程。

AST转换-AST节点内部做了哪些转换?- 上篇

上一篇文章中,我们学习了 template 的解析过程,最终拿到了一个 AST 节点对象。这个对象是对模板的完整描述,但是它还不能直接拿来生成代码,因为它的语义化还不够,没有包含和编译优化的相关属性,所以还需要进一步转换。

侦听器的实现原理和使用场景 - 下篇

在前面中,我们多次提到回调函数是以一种调度的方式执行的,特别是当 flush 不是 sync 时,它会把回调函数执行的任务推到一个异步队列中执行。接下来,我们就来分析异步执行队列的设计。分析之前,我们先来思考一下,为什么会需要异步队列?