首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

CompressionWebpackPlugin

准备资源的压缩版本以通过Content-Encoding为其提供服务

安装

代码语言:javascript
复制
npm i -D compression-webpack-plugin

用法

webpack.config.js

代码语言:javascript
复制
const CompressionPlugin = require("compression-webpack-plugin")

module.exports = {
  plugins: [
    new CompressionPlugin(...options)
  ]
}

选项

Name

类型

默认

描述

test

{RegExp}

.

所有匹配此{RegExp}的资产都会被处理

asset

{String}

path.gzquery

目标资产名称。文件被替换为原始资产。路径将替换为原始资产的路径并使用查询进行查询

filename

{Function}

{功能}(资产)=>接收资产名称(处理资产选项后)并返回新资产名称的资产

algorithm

{String|Function}

gzip的

可以是(缓冲区,cb)=> cb(缓冲区),或者如果使用了{String},则该算法取自zlib` |

threshold

{Number}

0

只处理大于此大小的资产。以字节为单位

minRatio

{Number}

0.8

只有压缩好这个比率的资产才能被处理

deleteOriginalAssets

{Boolean}

是否删除原始资产

webpack.config.js

代码语言:javascript
复制
[
  new CompressionPlugin({
    test: /\.js/
  })
]

asset

webpack.config.js

代码语言:javascript
复制
[
  new CompressionPlugin({
    asset: '[path].gz[query]'
  })
]

filename

webpack.config.js

代码语言:javascript
复制
[
  new CompressionPlugin({
    filename (asset) {
      asset = 'rename'
      return asset
    }
  })
]

algorithm

webpack.config.js

代码语言:javascript
复制
[
  new CompressionPlugin({
    algorithm: 'gzip'
  })
]

threshold

webpack.config.js

代码语言:javascript
复制
[
  new CompressionPlugin({
    threshold: 0
  })
]

minRatio

webpack.config.js

代码语言:javascript
复制
[
  new CompressionPlugin({
    minRatio: 0.8
  })
]

deleteOriginalAssets

webpack.config.js

代码语言:javascript
复制
[
  new CompressionPlugin({
    deleteOriginalAssets: true
  })
]

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com