Files
admin-jxn-testing/vue.config.js

101 lines
3.0 KiB
JavaScript
Raw Normal View History

2024-08-29 09:44:54 +08:00
const TerserPlugin = require("terser-webpack-plugin");
const CompressionWebpackPlugin = require('compression-webpack-plugin')
const IS_PRODUCTION = process.env.NODE_ENV === 'production'
// var target = 'http://www.zqaiotagro.cn/' // 新版 - 线下(开发环境默认)
//var target = 'http://farm.zqaiotagrodev.com/' // 新版 - 线下(开发环境默认)
var target = 'https://demo-farm.aiotagro.com' // 新版 - 线下(开发环境默认)
var plugins = []
if (IS_PRODUCTION) {
plugins = [
new CompressionWebpackPlugin({
// test: /\.(js|css|html)?$/i, // 压缩文件格式
test: /\.(js|css)?$/i, // 压缩文件格式
filename: '[path].gz[query]', // 压缩后的文件名
algorithm: 'gzip', // 使用gzip压缩
// 只有大小大于该值的资源会被处理。单位是 bytes。默认值是 0。
threshold: 10240,
minRatio: 0.8, // 压缩率小于1才会压缩
deleteOriginalAssets: true // 是否删除原资源
})
]
// target = 'https://zhaqi.xinniuyun.com' // 新版 - 线上(生产环境)
target = 'https://demo-zq.aiotagro.com'
}
const cdn = {
// 忽略第三方库
externals: {
'vue': 'Vue',
'element-ui': 'ELEMENT',
'vue-router': 'VueRouter',
'vuex': 'Vuex',
'axios': 'axios',
'moment': 'moment',
'jquery': '$'
// 'v-distpicker': 'VDistpicker'
},
// CDN
js: [
'https://unpkg.zhimg.com/vue@2.6.11/dist/vue.js',
'https://unpkg.zhimg.com/element-ui@2.15.6/lib/index.js',
'https://unpkg.zhimg.com/vue-router@3.2.0/dist/vue-router.js',
'https://unpkg.zhimg.com/vuex@3.4.0/dist/vuex.js',
'https://unpkg.zhimg.com/axios@0.26.1/dist/axios.min.js',
'https://unpkg.zhimg.com/moment@2.29.2/moment.js',
'https://unpkg.zhimg.com/jquery@3.6.0/dist/jquery.min.js'
// 'https://unpkg.com/v-distpicker@1.2.13/dist/v-distpicker.js',
// 'https://code.jquery.com/jquery-3.6.0.min.js'
],
2024-08-29 09:59:37 +08:00
css: ["https://unpkg.com/element-ui/lib/theme-chalk/index.css"],
2024-08-29 09:44:54 +08:00
}
module.exports = {
assetsDir: 'assets',
productionSourceMap: false,
configureWebpack: {
plugins: plugins,
optimization: {
minimize: true,
minimizer: [
new TerserPlugin({
parallel: true,
terserOptions: {
compress: {
drop_console: true,
drop_debugger: true,
pure_funcs: ["console.log", "console.error"],//配置移除指令如console.log,alert等
},
format: {
comments: false,
},
},
extractComments: false,
})
]
},
},
chainWebpack: config => {
// if (IS_PRODUCTION) {
config.plugin('html').tap(args => {
args[0].title = '智慧畜牧平台'
args[0].cdn = cdn
return args
})
config.externals(cdn.externals)
// }
},
// 配置请求
devServer: {
proxy: {
'/': {
target: target,
changeOrigin: true,
ws: true,
pathRewrite: {
'^/': ''
}
}
}
}
}