zouyu
2023-11-17 d8ac6057eaad648687699e25a575f3b7b8c1b102
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
/**
 * 配置参考:
 * https://cli.vuejs.org/zh/config/
 */
//const url = 'http://ztt-gateway:9999'
const url = 'http://ztt-gateway:9999'
const localUrl = 'http://localhost:8089'
//const localUrl = 'http://10.88.15.95:8089'
const CompressionWebpackPlugin = require('compression-webpack-plugin')
const MonacoWebpackPlugin = require('monaco-editor-webpack-plugin')
const productionGzipExtensions = ['js', 'css']
module.exports = {
  lintOnSave: false,
  productionSourceMap: false,
  chainWebpack: (config) => {
    config.plugin('monaco').use(new MonacoWebpackPlugin())
    // 忽略的打包文件
    config.externals({
      axios: 'axios'
    })
    const entry = config.entry('app')
    entry.add('babel-polyfill').end()
    entry.add('classlist-polyfill').end()
  },
  // eslint-disable-next-line
  configureWebpack: (config) => {
    // if (process.env.NODE_ENV === 'production') {
    //   // 仅在生产环境下启用该配置
    //   return {
    //     plugins: [
    //       /*new MonacoWebpackPlugin({
    //         languages: ['javascript', 'css', 'html', 'json']
    //       }),*/
    //       new CompressionWebpackPlugin({
    //         filename: '[path].gz[query]',
    //         algorithm: 'gzip',
    //         test: new RegExp(
    //           '\\.(' + productionGzipExtensions.join('|') + ')$'
    //         ),
    //         threshold: 1024, // 只有大小大于该值的资源会被处理,当前配置为对于超过1k的数据进行处理,不足1k的可能会越压缩越大
    //         minRatio: 0.99, // 只有压缩率小于这个值的资源才会被处理
    //         deleteOriginalAssets: true // 删除原文件
    //       })
    //     ]
    //   }
    // }
  },
  // 配置转发代理
  devServer: {
    disableHostCheck: true,
    port: 8080,
      proxy: {
      '/': {
        target: url,
        ws: false, // 需要websocket 开启
        pathRewrite: {
          '^/': '/'
        }
      }
      // 3.5 以后不需要再配置
    }
  }
}