12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- const path = require('path');
- const CompressionPlugin = require('compression-webpack-plugin');
- module.exports = {
- publicPath: `/${process.env.VUE_APP_ROUTER}`,
- // 打包文件
- outputDir: `${process.env.VUE_APP_ROUTER}`,
- productionSourceMap: false,
- configureWebpack: (config) => {
- Object.assign(config, {
- // 开发生产共同配置
- resolve: {
- extensions: ['.js', '.json', '.vue'],
- alias: {
- '@': path.resolve(__dirname, './src'),
- '@c': path.resolve(__dirname, './src/components'),
- '@a': path.resolve(__dirname, './src/assets'),
- },
- },
- });
- // config.entry.app = ['@babel/polyfill', './src/main.js'];
- // if (process.env.NODE_ENV === 'production') {
- // //生产环境
- // config.plugins.push(
- // new CompressionPlugin({
- // /* [file]被替换为原始资产文件名。
- // [path]替换为原始资产的路径。
- // [dir]替换为原始资产的目录。
- // [name]被替换为原始资产的文件名。
- // [ext]替换为原始资产的扩展名。
- // [query]被查询替换。*/
- // filename: '[path].gz[query]',
- // //压缩算法
- // algorithm: 'gzip',
- // //匹配文件
- // test: /\.js$|\.css$|\.html$/,
- // //压缩超过此大小的文件,以字节为单位
- // threshold: 10240,
- // minRatio: 0.8,
- // //删除原始文件只保留压缩后的文件
- // //deleteOriginalAssets: false
- // })
- // );
- // config.externals = {
- // vue: 'Vue',
- // 'vue-router': 'VueRouter',
- // vuex: 'Vuex',
- // axios: 'axios',
- // moment: 'moment',
- // lodash: '_',
- // vant: 'vant',
- // };
- // }
- },
- chainWebpack: (config) => {
- // 其他配置
- config.entry('main').add('babel-polyfill'); // main是入口js文件
- // 其他配置
- },
- devServer: {
- port: '9800',
- //api地址前缀
- proxy: {
- '/files': {
- target: 'http://broadcast.waityou24.cn',
- },
- '/wxgateway': {
- target: 'http://broadcast.waityou24.cn', //http://192.168.1.19:9101
- changeOrigin: true,
- ws: false,
- },
- '/api': {
- target: 'http://192.168.1.19:9901', //http://192.168.1.19:9101
- changeOrigin: true,
- ws: false,
- },
- },
- },
- };
|