vite.config.ts (874B)
1 import react from "@vitejs/plugin-react"; 2 import { defineConfig, loadEnv } from "vite"; 3 4 import { resolveApiPort, resolveDevWebPort } from "./config/ports.js"; 5 6 // https://vite.dev/config/ 7 export default defineConfig(({ mode }) => { 8 const env = loadEnv(mode, process.cwd(), ""); 9 const merged: NodeJS.ProcessEnv = { ...process.env, ...env }; 10 const apiPort = resolveApiPort(merged); 11 const webPort = resolveDevWebPort(merged); 12 13 return { 14 plugins: [react()], 15 server: { 16 port: webPort, 17 strictPort: true, 18 proxy: { 19 "/api": { 20 target: `http://127.0.0.1:${apiPort}`, 21 changeOrigin: true, 22 }, 23 }, 24 }, 25 preview: { 26 port: webPort, 27 strictPort: true, 28 proxy: { 29 "/api": { 30 target: `http://127.0.0.1:${apiPort}`, 31 changeOrigin: true, 32 }, 33 }, 34 }, 35 }; 36 });