vue.config.js 1.0 KB

12345678910111213141516171819202122232425262728293031323334
  1. // 导入compression-webpack-plugin
  2. const CompressionWebpackPlugin = require("compression-webpack-plugin");
  3. // 定义压缩文件类型
  4. const productionGzipExtensions = ["js", "css"];
  5. module.exports = {
  6. configureWebpack: config => {
  7. // 通过配置 externals 实现打生产包时排除某些依赖,使用 cdn 资源代替
  8. config.externals = {
  9. vue: "Vue",
  10. vuex: "Vuex",
  11. axios: "axios",
  12. CryptoJS: "CryptoJS",
  13. Qs: "Qs",
  14. moment: "moment",
  15. "vue-router": "VueRouter",
  16. "element-ui": "ELEMENT"
  17. };
  18. config.plugins.push(
  19. // 服务器开启Gzip
  20. new CompressionWebpackPlugin({
  21. filename: "[path].gz[query]",
  22. algorithm: "gzip",
  23. test: new RegExp("\\.(" + productionGzipExtensions.join("|") + ")$"),
  24. threshold: 10240,
  25. deleteOriginalAssets: false,
  26. minRatio: 0.8
  27. })
  28. );
  29. },
  30. publicPath: "/oms/"
  31. // publicPath: process.env.VUE_APP_ENV === "prod" ?
  32. // "//static.hoolihome.com/admin/oms/" : "/oms/"
  33. };