// vite.config.ts import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' import AutoImport from 'unplugin-auto-import/vite' import Components from 'unplugin-vue-components/vite' import { ElementPlusResolver } from 'unplugin-vue-components/resolvers' import path from 'path' export default defineConfig({ // 设置基础路径,支持子目录部署 base: './', resolve: { alias: { '@': path.resolve(__dirname, './src') } }, plugins: [ vue(), AutoImport({ resolvers: [ElementPlusResolver()], }), Components({ resolvers: [ElementPlusResolver()], }), ], // 构建配置 build: { // 输出目录 outDir: 'dist', // 静态资源目录 assetsDir: 'assets', // 生成 sourcemap sourcemap: false, // 压缩配置 minify: 'esbuild', // 代码分割配置 rollupOptions: { output: { // 手动分割代码块 manualChunks: { // 将 Vue 相关库单独打包 'vue-vendor': ['vue', 'vue-router', 'pinia'], // 将 Element Plus 单独打包 'element-plus': ['element-plus'], // 将图标库单独打包 'icons': ['@element-plus/icons-vue'] } } } }, // 服务器配置 server: { port: 5173, // 保持你当前使用的端口 open: true, cors: true } })