vite.config.ts 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. import { fileURLToPath, URL } from 'node:url'
  2. import { defineConfig } from 'vite'
  3. import vue from '@vitejs/plugin-vue'
  4. import vueJsx from '@vitejs/plugin-vue-jsx'
  5. import AutoImport from 'unplugin-auto-import/vite'
  6. import Components from 'unplugin-vue-components/vite'
  7. import Icons from 'unplugin-icons/vite'
  8. import IconsResolver from 'unplugin-icons/resolver'
  9. import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'
  10. import Unocss from 'unocss/vite'
  11. // https://vitejs.dev/config/
  12. export default defineConfig({
  13. plugins: [
  14. vue(),
  15. vueJsx(),
  16. Unocss(),
  17. AutoImport({
  18. imports: ['vue', 'vue-router', 'pinia', '@vueuse/core'],
  19. resolvers: [
  20. ElementPlusResolver(),
  21. IconsResolver({
  22. prefix: 'Icon'
  23. })
  24. ],
  25. dts: 'src/auto-import.d.ts'
  26. }),
  27. Components({
  28. resolvers: [
  29. ElementPlusResolver(),
  30. IconsResolver({
  31. enabledCollections: ['ep']
  32. })
  33. ],
  34. dirs: ['src/components'],
  35. extensions: ['vue'],
  36. dts: 'src/components.d.ts'
  37. }),
  38. Icons({
  39. autoInstall: true
  40. })
  41. ],
  42. resolve: {
  43. alias: {
  44. '@': fileURLToPath(new URL('./src', import.meta.url))
  45. }
  46. },
  47. server: {
  48. proxy: {
  49. '/api': {
  50. target: 'http://10.8.8.57:30701/mbwb',
  51. changeOrigin: true
  52. }
  53. }
  54. },
  55. build: {
  56. terserOptions: {
  57. //打包后移除console和注释
  58. compress: {
  59. drop_console: true,
  60. drop_debugger: true
  61. }
  62. }
  63. }
  64. })