vue.config.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. const path = require("path");
  2. const autoprefixer = require('autoprefixer');
  3. const pxtoviewport = require('postcss-px-to-viewport');
  4. function resolve(dir) {
  5. return path.join(__dirname, dir);
  6. }
  7. module.exports = {
  8. publicPath: process.env.NODE_ENV==='production'||process.env.NODE_ENV==='test'?process.env.VUE_APP_PRE_PATH:"/",
  9. outputDir: 'health-monitoring',
  10. devServer: {
  11. port: 8080,
  12. progress: false, // vue-cli-service serve 启动进度的显示和隐藏
  13. headers: {
  14. 'Access-Control-Allow-Origin': '*'
  15. },
  16. },
  17. chainWebpack: config => {
  18. config.plugin('html')
  19. .tap(args => {
  20. args[0].alias = process.env.VUE_APP_ALIAS
  21. args[0].name = process.env.VUE_APP_TITLE
  22. return args
  23. })
  24. config.externals( {
  25. vue: "Vue",
  26. vuex: "Vuex",
  27. axios: "axios",
  28. lodash: "_",
  29. "vue-router": "VueRouter",
  30. "vant": "vant"
  31. })
  32. const svgRule = config.module.rule("svg");
  33. // 清除已有的所有 loader。
  34. // 如果你不这样做,接下来的 loader 会附加在该规则现有的 loader 之后。
  35. svgRule.uses.clear();
  36. // 添加要替换的 loader
  37. // svgRule.use("vue-svg-loader").loader("vue-svg-loader");
  38. svgRule
  39. .use("svg-sprite-loader")
  40. .loader("svg-sprite-loader")
  41. .options({
  42. symbolId: "icon-[name]"
  43. });
  44. },
  45. css: {
  46.       loaderOptions: {
  47.         postcss: {
  48.           plugins: [
  49.             autoprefixer(),
  50.             pxtoviewport({
  51.               viewportWidth:375
  52.             })
  53.           ]
  54.         }
  55.       }
  56.     }
  57. }