vue.config.js 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. var TerserPlugin = require("terser-webpack-plugin");
  2. var devProxy = {
  3. "/api/": {
  4. target: process.env.VUE_APP_DEV_PROXY,
  5. changeOrigin: true
  6. }
  7. };
  8. // 配置手册: https://cli.vuejs.org/zh/config/#vue-config-js
  9. var config = {
  10. // publicPath: './',
  11. devServer: {
  12. port: 8056,
  13. proxy: devProxy
  14. },
  15. chainWebpack: config => {
  16. // webpack-chain配置手册:github.com/neutrinojs/webpack-chain#getting-started
  17. // 限制base64图片的大小在20kb以下
  18. config.module
  19. .rule("images")
  20. .use("url-loader")
  21. .loader("url-loader")
  22. .tap(options =>
  23. Object.assign(options, { limit: 20480, esModule: false })
  24. );
  25. }
  26. };
  27. // compress配置手册:https://github.com/mishoo/UglifyJS2/tree/harmony#compress-options
  28. if (process.env.NODE_ENV === "production") {
  29. config.configureWebpack = {
  30. optimization: {
  31. minimizer: [
  32. new TerserPlugin({
  33. terserOptions: { compress: { drop_console: true } }
  34. })
  35. ]
  36. }
  37. };
  38. }
  39. module.exports = config;