手写 webpack 核心原理 打包的主要流程如下 需要读到入口文件里面的内容。 分析入口文件,递归的去读取模块所依赖的文件内容,生成 AST 语法树。 根据 AST 语法树,生成浏览器能够运行的代码 具体细节 获取主模块内容 分析模块 安装@babel/parser 包(转 AST) 对模块内容进行处理 安装@babel/traverse 包(遍历 AST 收集依赖) 安装@babel/core 和@babel/preset-env 包 (es6 转 ES5) 递归所有模块 生成最终代码