说明
玩转 webpack 学习笔记
准备阶段
webpack 的编译都按照下面的钩子调用顺序执行
WebpackOptionsApply
WebpackOptionsDefaulter 做一些初始的操作
设置一些参数
再看看 NodeEnvironmentPlugin my-project\node_modules\webpack\lib\node\NodeEnvironmentPlugin.js
可以看到在 entry-option 跟 run 之间有个 beforeRun,用于清理构建的缓存
下面使用命令找到 entryOption
,这里使用 git bash 工具执行下面命令
grep "entryOption" -rn ./node_modules/webpack
然后找到 WebpackOptionsApply 的 291 行
WebpackOptionsApply 将所有的配置 options 参数转换成 webpack 内部插件
使用默认插件列表
举例:(设置 ->开启)
output.library -> LibraryTemplatePlugin
externals -> ExternalsPlugin
devtool -> EvalDevtoolModulePlugin, SourceMapDevToolPlugin
AMDPlugin, CommonJsPlugin
RemoveEmptyChunksPlugin
监听 entryOption 的地方,比如: