vite.config.ts 1.6 KB

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