返回介绍

第六部分:插件

发布于 2019-05-27 04:54:30 字数 6757 浏览 1079 评论 0 收藏 0

webpack 有着丰富的插件接口(rich plugin interface)。webpack 自身的多数功能都使用这个插件接口。这个插件接口使 webpack 变得极其灵活

NameDescription
AggressiveSplittingPlugin将原来的 chunk 分成更小的 chunk
BabelMinifyWebpackPlugin使用 babel-minify进行压缩
BannerPlugin在每个生成的 chunk 顶部添加 banner
CommonsChunkPlugin提取 chunks 之间共享的通用模块
CompressionWebpackPlugin预先准备的资源压缩版本,使用 Content-Encoding 提供访问服务
ContextReplacementPlugin重写 require 表达式的推断上下文
CopyWebpackPlugin将单个文件或整个目录复制到构建目录
DefinePlugin允许在编译时(compile time)配置的全局常量
DllPlugin为了极大减少构建时间,进行分离打包
EnvironmentPluginDefinePluginprocess.env 键的简写方式。
ExtractTextWebpackPlugin从 bundle 中提取文本(CSS)到单独的文件
HotModuleReplacementPlugin启用模块热替换(Enable Hot Module Replacement - HMR)
HtmlWebpackPlugin简单创建 HTML 文件,用于服务器访问
I18nWebpackPlugin为 bundle 增加国际化支持
IgnorePlugin从 bundle 中排除某些模块
LimitChunkCountPlugin设置 chunk 的最小/最大限制,以微调和控制 chunk
LoaderOptionsPlugin用于从 webpack 1 迁移到 webpack 2
MinChunkSizePlugin确保 chunk 大小超过指定限制
NoEmitOnErrorsPlugin在输出阶段时,遇到编译错误跳过
NormalModuleReplacementPlugin替换与正则表达式匹配的资源
NpmInstallWebpackPlugin在开发时自动安装缺少的依赖
ProvidePlugin不必通过 import/require 使用模块
SourceMapDevToolPlugin对 source map 进行更细粒度的控制
EvalSourceMapDevToolPlugin对 eval source map 进行更细粒度的控制
UglifyjsWebpackPlugin可以控制项目中 UglifyJS 的版本
ZopfliWebpackPlugin通过 node-zopfli 将资源预先压缩的版本

更多第三方插件,请查看 awesome-webpack 列表。

Awesome

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文