| | |
| | | return path.join(__dirname, dir) |
| | | } |
| | | |
| | | const CompressionPlugin = require('compression-webpack-plugin') |
| | | |
| | | const name = process.env.VUE_APP_TITLE || 'RuoYi-Vue-Plus后台管理系统' // 网页标题 |
| | | |
| | | const port = process.env.port || process.env.npm_config_port || 80 // 端口 |
| | |
| | | }, |
| | | disableHostCheck: true |
| | | }, |
| | | css: { |
| | | loaderOptions: { |
| | | sass: { |
| | | sassOptions: { outputStyle: "expanded" } |
| | | } |
| | | } |
| | | }, |
| | | configureWebpack: { |
| | | name: name, |
| | | resolve: { |
| | | alias: { |
| | | '@': resolve('src') |
| | | } |
| | | } |
| | | }, |
| | | plugins: [ |
| | | // http://doc.ruoyi.vip/ruoyi-vue/other/faq.html#使用gzip解压缩静态文件 |
| | | new CompressionPlugin({ |
| | | test: /\.(js|css|html)?$/i, // 压缩文件格式 |
| | | filename: '[path].gz[query]', // 压缩后的文件名 |
| | | algorithm: 'gzip', // 使用gzip压缩 |
| | | minRatio: 0.8 // 压缩率小于1才会压缩 |
| | | }) |
| | | ], |
| | | }, |
| | | chainWebpack(config) { |
| | | config.plugins.delete('preload') // TODO: need test |