vue.config.js 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. const path = require('path')
  2. const defaultSettings = require('./src/settings.js')
  3. function resolve(dir) {
  4. return path.join(__dirname, dir)
  5. }
  6. const name = defaultSettings.title || '代理端管理系统'
  7. module.exports = {
  8. transpileDependencies: [/@aws-sdk/, /@smithy/],
  9. publicPath: '/',
  10. outputDir: 'dist',
  11. assetsDir: 'static',
  12. lintOnSave: process.env.NODE_ENV === 'development',
  13. productionSourceMap: false,
  14. devServer: {
  15. port: 82,
  16. proxy: {
  17. '/api': {
  18. target: 'http://localhost:8004',
  19. changeOrigin: true,
  20. pathRewrite: { '^/api': '' }
  21. }
  22. }
  23. },
  24. configureWebpack: {
  25. name: name,
  26. resolve: {
  27. alias: {
  28. '@': resolve('src')
  29. }
  30. }
  31. },
  32. chainWebpack(config) {
  33. config.plugins.delete('preload')
  34. config.plugins.delete('prefetch')
  35. config.module
  36. .rule('svg')
  37. .exclude.add(resolve('src/icons'))
  38. .end()
  39. config.module
  40. .rule('icons')
  41. .test(/\.svg$/)
  42. .include.add(resolve('src/icons'))
  43. .end()
  44. .use('svg-sprite-loader')
  45. .loader('svg-sprite-loader')
  46. .options({
  47. symbolId: 'icon-[name]'
  48. })
  49. .end()
  50. }
  51. }