Loader
在 module.rules 中配置,类型为数组。每一项都是一个 Object
本质是函数,对接收内容进行转换,返回转换后的结果。
Plugin
在 plugins 中单独配置,类型为数组,每一项是一个 Plugin 的实例
就是插件,可以扩展webpack的功能
运行流程
初始化
启动构建,读取与合并配置参数,加载 Plugin,实例化 Compiler
编译
从 Entry 出发,针对每个 Module 串行调用对应的 Loader 去翻译文件的内容,再找到该 Module 依赖的 Module,递归地进行编译处理
输出
将编译后的 Module 组合成 Chunk,将 Chunk 转换成文件,输出到文件系统中