From a028b566edf0546b75ec6483337480132b8fb6d6 Mon Sep 17 00:00:00 2001
From: RuoYi <yzz_ivy@163.com>
Date: 星期一, 20 十二月 2021 09:46:17 +0800
Subject: [PATCH] 集成compression-webpack-plugin插件实现打包Gzip压缩
---
ruoyi-ui/vue.config.js | 41 ++++++++++++++++++++++++++---------------
1 files changed, 26 insertions(+), 15 deletions(-)
diff --git a/ruoyi-ui/vue.config.js b/ruoyi-ui/vue.config.js
index 963a823..63bac6a 100644
--- a/ruoyi-ui/vue.config.js
+++ b/ruoyi-ui/vue.config.js
@@ -1,12 +1,13 @@
'use strict'
const path = require('path')
-const defaultSettings = require('./src/settings.js')
function resolve(dir) {
return path.join(__dirname, dir)
}
-const name = defaultSettings.title || '鑻ヤ緷绠$悊绯荤粺' // 鏍囬
+const CompressionPlugin = require('compression-webpack-plugin')
+
+const name = process.env.VUE_APP_TITLE || '鑻ヤ緷绠$悊绯荤粺' // 缃戦〉鏍囬
const port = process.env.port || process.env.npm_config_port || 80 // 绔彛
@@ -30,6 +31,7 @@
devServer: {
host: '0.0.0.0',
port: port,
+ open: true,
proxy: {
// detail: https://cli.vuejs.org/config/#devserver-proxy
[process.env.VUE_APP_BASE_API]: {
@@ -42,13 +44,29 @@
},
disableHostCheck: true
},
+ css: {
+ loaderOptions: {
+ sass: {
+ sassOptions: { outputStyle: "expanded" }
+ }
+ }
+ },
configureWebpack: {
name: name,
resolve: {
alias: {
'@': resolve('src')
}
- }
+ },
+ plugins: [
+ new CompressionPlugin({
+ test: /\.(js|css|html)?$/i, // 鍘嬬缉鏂囦欢鏍煎紡
+ filename: '[path].gz[query]', // 鍘嬬缉鍚庣殑鏂囦欢鍚�
+ algorithm: 'gzip', // 浣跨敤gzip鍘嬬缉
+ threshold: 10240, // 瀵硅秴杩�10K鐨勬暟鎹帇缂�
+ minRatio: 0.8 // 鍘嬬缉鐜囧皬浜�1鎵嶄細鍘嬬缉
+ })
+ ],
},
chainWebpack(config) {
config.plugins.delete('preload') // TODO: need test
@@ -68,17 +86,6 @@
.loader('svg-sprite-loader')
.options({
symbolId: 'icon-[name]'
- })
- .end()
-
- // set preserveWhitespace
- config.module
- .rule('vue')
- .use('vue-loader')
- .loader('vue-loader')
- .tap(options => {
- options.compilerOptions.preserveWhitespace = true
- return options
})
.end()
@@ -117,7 +124,11 @@
}
}
})
- config.optimization.runtimeChunk('single')
+ config.optimization.runtimeChunk('single'),
+ {
+ from: path.resolve(__dirname, './public/robots.txt'), //闃茬埇铏枃浠�
+ to: './' //鍒版牴鐩綍涓�
+ }
}
)
}
--
Gitblit v1.9.3