插件

Webpack 拥有丰富的插件接口。Webpack 自身的大多数功能都使用了这个插件接口。这使得 webpack 非常灵活

名称描述
BannerPlugin在每个生成的块的顶部添加一个横幅
ChunksWebpackPlugin创建包含入口点和块关系的 HTML 文件来提供你的 bundle
CommonsChunkPlugin提取块之间共享的公共模块
CompressionWebpackPlugin准备资产的压缩版本,以便通过 Content-Encoding 提供它们
ContextReplacementPlugin覆盖 require 表达式的推断上下文
CopyWebpackPlugin将单个文件或整个目录复制到构建目录
DefinePlugin允许在编译时配置全局常量
DllPlugin拆分 bundle 以显著提高构建时间
EnvironmentPluginprocess.env 键上使用 DefinePlugin 的简写
EslintWebpackPlugin一个用于 webpack 的 ESLint 插件
HotModuleReplacementPlugin启用模块热替换 (HMR)
HtmlWebpackPlugin轻松创建 HTML 文件来提供你的 bundle
IgnorePlugin从 bundle 中排除某些模块
LimitChunkCountPlugin设置分块的最小/最大限制,以便更好地控制分块
MinChunkSizePlugin保持块大小在指定限制之上
MiniCssExtractPlugin为每个需要 CSS 的 JS 文件创建一个 CSS 文件
NoEmitOnErrorsPlugin当存在编译错误时跳过发出阶段
NormalModuleReplacementPlugin替换匹配正则表达式的资源
NpmInstallWebpackPlugin在开发过程中自动安装缺失的依赖项
ProgressPlugin报告编译进度
ProvidePlugin无需使用 import/require 即可使用模块
SourceMapDevToolPlugin实现对 Source Map 更细粒度的控制
EvalSourceMapDevToolPlugin实现对 eval Source Map 更细粒度的控制
SvgChunkWebpackPlugin根据你的入口点依赖项生成经 SVGO 优化的 SVG 精灵图
TerserPlugin使用 Terser 压缩项目中的 JS

有关更多第三方插件,请参阅 awesome-webpack 中的列表。

10 贡献者

simon04gonzoyumorouzbeh84aretecodeeko3alpharefactorizedbyzykEugeneHlushkosnitin315chenxsan