编译模块概述
在本实现的编译模块,我们将自己编写的编译模块来解析并输出未 render 函数
let template = `<template>Consumer: xxx</template>`
render() {
return h('div', {}, `Consumer: xxx`)
}
大概的编译流程是这样的:

- 用户编写的
template字符串 - 通过
parser转换为 AST 抽象语法树 - 将 AST 传递到
transform模块,对 AST 进行处理 - 将处理好的 AST 传递到
codegen最终输出render
一个 template 会涉及到三种类型:
<div>
hi, {{msg}}
</div>
element:divtext:hi插值:{{msg}}
