Browse Source

配置gzip

guanchunjie 3 years ago
parent
commit
b498ac49d2
2 changed files with 9 additions and 0 deletions
  1. 1 0
      package.json
  2. 8 0
      vue.config.js

+ 1 - 0
package.json

@@ -55,6 +55,7 @@
         "babel-jest": "23.6.0",
         "babel-plugin-dynamic-import-node": "2.3.3",
         "chalk": "2.4.2",
+        "compression-webpack-plugin": "^6.1.1",
         "connect": "3.6.6",
         "drag-tree-table": "^2.2.0",
         "eslint": "6.7.2",

+ 8 - 0
vue.config.js

@@ -1,6 +1,7 @@
 'use strict'
 const path = require('path')
 const defaultSettings = require('./src/settings.js')
+const CompressionPlugin = require('compression-webpack-plugin');
 
 function resolve(dir) {
   return path.join(__dirname, dir)
@@ -66,6 +67,13 @@ module.exports = {
       new webpack.ProvidePlugin({
         jQuery: 'jquery',
         $: 'jquery'
+      }),
+      new CompressionPlugin({
+        algorithm: 'gzip', // 使用gzip压缩
+        test: /\.js$|\.html$|\.css$/, // 匹配文件名
+        minRatio: 0.8, // 压缩率小于0.8才会压缩
+        threshold: 10240, // 对超过10k的数据压缩
+        deleteOriginalAssets: false // 是否删除未压缩的源文件,谨慎设置,如果希望提供非gzip的资源,可不设置或者设置为false(比如删除打包后的gz后还可以加载到原始资源文件)
       })
     ]
   },