import path from 'path'; import { defineConfig, loadEnv } from 'vite'; import react from '@vitejs/plugin-react'; export default defineConfig(({ mode }) => { const env = loadEnv(mode, '.', ''); return { server: { port: 3000, host: '0.0.0.0', }, plugins: [react()], define: { 'process.env.API_KEY': JSON.stringify(env.GEMINI_API_KEY), 'process.env.GEMINI_API_KEY': JSON.stringify(env.GEMINI_API_KEY) }, resolve: { alias: { '@': path.resolve(__dirname, '.'), } }, build: { // 启用代码分割 rollupOptions: { output: { manualChunks: { // 将第三方库打包到单独的chunk中 'react-vendor': ['react', 'react-dom', 'react-router-dom'], 'utils': ['axios', 'qs'], 'icons': ['lucide-react'] } } }, // 启用压缩 minify: 'esbuild', // 生成source map (生产环境可选) sourcemap: false, // 启用CSS代码分割 cssCodeSplit: true, // 启用图片优化 assetsInlineLimit: 4096, // 小于4KB的资源内联 // 调整chunk大小警告阈值 chunkSizeWarningLimit: 1000 } }; });