import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' import Icons from 'unplugin-icons/vite' import IconsResolver from 'unplugin-icons/resolver' import Components from 'unplugin-vue-components/vite' import AutoImport from 'unplugin-auto-import/vite' import { ElementPlusResolver } from 'unplugin-vue-components/resolvers' import path from 'path' import { fileURLToPath } from 'url' const __filename = fileURLToPath(import.meta.url) const __dirname = path.dirname(__filename) export default defineConfig({ plugins: [ vue(), AutoImport({ resolvers: [ElementPlusResolver()], }), Components({ resolvers: [ ElementPlusResolver(), IconsResolver({ prefix: 'Icon', // customCollections: ['ep'], // ✅ 强制启用 ep 图标集支持 enabledCollections: ['ep'] // ✅ 防止 vite 无法识别 }), ], }), Icons({ autoInstall: true, compiler: 'vue3' // Vue 3 模式下生效 }), ], resolve: { alias: { '@': path.resolve(__dirname, 'src') } }, server: { proxy: { '/api': { target: 'http://localhost:8080', changeOrigin: true, rewrite: path => path.replace(/^\/api/, '') } } } })