1. 内部插件
webpack本身内置了很多插件。
名称 | 描述 | 适用环境 |
---|---|---|
AggressiveSplittingPlugin | 将原始chunk分割成更小的chunk | |
BannerPlugin | 在每个生成的 chunk 顶部添加 banner | |
CommonsChunkPlugin | 提取 chunks 之间共享的通用模块 | |
NamedModulesPlugin | HMR时显示模块的相对路径 | 生产 |
HashedModuleIdsPlugin | 根据模块的相对路径生成一个四位数的hash作为模块id | 生产 |
ContextReplacementPlugin | 重写 require 表达式的推断上下文 |
|
DefinePlugin | 允许在编译时配置全局常量 | |
DllPlugin | 分割bundle来大幅改善构建时间,分割bundle | |
EnvironmentPlugin | 内部使用DefinePlugin 来设置 process.env 键的快捷方式 |
|
HotModuleReplacementPlugin | 开启模块热替换 | |
IgnorePlugin | 从 bundle 中排除某些模块 | |
LimitChunkCountPlugin | 限制chunk的数量和每个chunk的体积 | |
MinChunkSizePlugin | 设置chunk的最小体积(字节) | |
NoEmitOnErrorsPlugin | 在输出阶段时,遇到编译错误跳过 | |
NormalModuleReplacementPlugin | 替换与正则表达式匹配的资源 | |
ProvidePlugin | 不必通过 import/require 使用模块 | |
SourceMapDevToolPlugin | 对 source map 进行更细粒度的控制 | |
PrefetchPlugin | 预取出普通的模块请求 | |
WatchIgnorePlugin | 观察模式下忽略某些文件 | |
ModuleConcatenationPlugin | 实现一些的预编译功能 |