vite.config.ts 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. import { defineConfig } from 'vite';
  2. import vue from '@vitejs/plugin-vue';
  3. import { resolve } from 'path';
  4. import UnoCSS from 'unocss/vite';
  5. import AutoImport from 'unplugin-auto-import/vite';
  6. import Components from 'unplugin-vue-components/vite';
  7. import { ElementPlusResolver } from 'unplugin-vue-components/resolvers';
  8. import { ViteImageOptimizer } from 'vite-plugin-image-optimizer';
  9. // https://vite.dev/config/
  10. export default defineConfig({
  11. base: './',
  12. build: {
  13. outDir: 'dashboard',
  14. },
  15. plugins: [
  16. vue(),
  17. UnoCSS(),
  18. // 自动引入组件
  19. AutoImport({
  20. resolvers: [ElementPlusResolver()],
  21. }),
  22. Components({
  23. resolvers: [ElementPlusResolver()],
  24. }),
  25. ViteImageOptimizer({
  26. logStats: true,
  27. ansiColors: true,
  28. test: /\.(jpe?g|png|gif|tiff|webp|svg|avif)$/i,
  29. includePublic: true,
  30. svg: {
  31. multipass: true,
  32. plugins: [
  33. {
  34. name: 'preset-default',
  35. params: {
  36. overrides: {
  37. cleanupNumericValues: false,
  38. cleanupIds: {
  39. minify: false,
  40. remove: false,
  41. },
  42. convertPathData: false,
  43. },
  44. },
  45. },
  46. 'sortAttrs',
  47. {
  48. name: 'addAttributesToSVGElement',
  49. params: {
  50. attributes: [{ xmlns: 'http://www.w3.org/2000/svg' }],
  51. },
  52. },
  53. ],
  54. },
  55. png: {
  56. quality: 80,
  57. },
  58. jpeg: {
  59. quality: 80,
  60. },
  61. jpg: {
  62. quality: 80,
  63. },
  64. webp: {
  65. lossless: true,
  66. },
  67. }),
  68. ],
  69. resolve: {
  70. alias: {
  71. '@': resolve(__dirname, 'src'),
  72. },
  73. },
  74. server: {
  75. proxy: {
  76. '/api': {
  77. // target: 'http://172.18.50.86:8080',
  78. target: 'http://172.26.28.188:8080',
  79. // target: 'http://10.254.254.8:8080',
  80. // target: "https://app-mx-data-gxc-uat.azurewebsites.net",
  81. changeOrigin: true,
  82. rewrite: (path) => path.replace('/api', ''),
  83. },
  84. },
  85. },
  86. });