Webpack 具有丰富的插件接口。Webpack 本身的大多数功能都使用此插件接口。这使得 webpack 灵活。
名称 | 描述 |
---|---|
BannerPlugin | 在每个生成的块的顶部添加横幅 |
ChunksWebpackPlugin | 创建包含入口点和块关系的 HTML 文件以提供您的捆绑包 |
CommonsChunkPlugin | 提取块之间共享的公共模块 |
CompressionWebpackPlugin | 准备资产的压缩版本以使用 Content-Encoding 提供它们 |
ContextReplacementPlugin | 覆盖 require 表达式的推断上下文 |
CopyWebpackPlugin | 将单个文件或整个目录复制到构建目录 |
DefinePlugin | 允许在编译时配置全局常量 |
DllPlugin | 拆分捆绑包以大幅提高构建时间 |
EnvironmentPlugin | 使用 DefinePlugin 在 process.env 键上的简写 |
EslintWebpackPlugin | Webpack 的 ESLint 插件 |
HotModuleReplacementPlugin | 启用热模块替换 (HMR) |
HtmlWebpackPlugin | 轻松创建 HTML 文件以提供您的捆绑包 |
IgnorePlugin | 从捆绑包中排除某些模块 |
LimitChunkCountPlugin | 为块设置最小/最大限制以更好地控制块 |
MinChunkSizePlugin | 使块大小保持在指定限制以上 |
MiniCssExtractPlugin | 为每个需要 CSS 的 JS 文件创建一个 CSS 文件 |
NoEmitOnErrorsPlugin | 当有编译错误时跳过发射阶段 |
NormalModuleReplacementPlugin | 替换与正则表达式匹配的资源 |
NpmInstallWebpackPlugin | 在开发过程中自动安装缺少的依赖项 |
ProgressPlugin | 报告编译进度 |
ProvidePlugin | 使用模块而无需使用 import/require |
SourceMapDevToolPlugin | 允许更细粒度的源映射控制 |
EvalSourceMapDevToolPlugin | 允许更细粒度的 eval 源映射控制 |
SvgChunkWebpackPlugin | 根据您的入口点依赖项生成由 SVGO 优化的 SVG 精灵 |
TerserPlugin | 使用 Terser 压缩项目中的 JS |
有关更多第三方插件,请参阅来自 awesome-webpack 的列表。