1. 初始化
  2. 编译
  3. 输出

初始化

读取命令行参数和配置文件合并配置对象

编译

通过入口文件,检测文件是否加载过,如果有直接返回,如果没有读取文件内容,根据文件内容生成AST抽象语法树,保存到dependencies中,替换依赖的函数,最后保存转换后的代码,递归转换其他依赖的模块

创建一个thunk,合并chunk assets生成一个资源列表

输入

根据资源列表,生成文件

如果使用watch,当文件变化时,会在编译开始