webpack原理篇(五十五):webpack流程:准备阶段

Posted 凯小默

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了webpack原理篇(五十五):webpack流程:准备阶段相关的知识,希望对你有一定的参考价值。

说明

玩转 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 的地方,比如:

以上是关于webpack原理篇(五十五):webpack流程:准备阶段的主要内容,如果未能解决你的问题,请参考以下文章

webpack原理篇(五十六):webpack流程:模块构建和chunk生成阶段

webpack原理篇(五十一):webpack启动过程分析

webpack原理篇(五十四):Tapable是如何和webpack进行关联起来的?

webpack原理篇(五十二):webpack-cli源码阅读

webpack原理篇(五十八):实战开发一个简易的webpack

webpack原理篇(五十三):Tapable插件架构与Hooks设计