Webpack的构建流程主要包括以下几个步骤:
初始化参数。解析Webpack配置参数,合并Shell传入和webpack.config.js文件配置的参数,形成最终的配 置结果。 开始编译。使用上一次得到的参数初始化compiler对象,注册所有配置的插件,插件监听Webpack构建生命周期的事件节点,做出相应的反应,执行对象的run方法开始执行编译。 确定入口。从配置的entry入口,开始解析文件构建AST语法树,找出依赖,递归下去。 编译模块。递归中根据文件类型和loader配置,调用所有配置的loader对文件进行转换,再找出该模块依赖的模块,再递归本步骤直到所有入口依赖的文件都经过了本步骤的处理。 完成模块编译。在经过第四步使用Loader翻译完所有模块后,得到了每个模块被翻译后的最终内容以及它们之间的依赖关系。 输出资源。根据入口和模块之间的依赖关系,组装成一个个包含多个模块的Chunk,再把每个Chunk转换成单独的文件加入到输出列表,这步是可以修改输出内容的最后机会。 输出完成。在确定好输出内容后,根据配置确定输出的路径和文件名,把文件内容写入到文件系统。