mirror of
https://github.com/cita-777/metapi.git
synced 2026-11-01 03:53:43 +08:00
42 lines
1.2 KiB
TypeScript
42 lines
1.2 KiB
TypeScript
import { defineConfig, loadEnv } from 'vite';
|
|
import react from '@vitejs/plugin-react';
|
|
import tailwindcss from '@tailwindcss/vite';
|
|
import { resolveDevProxyTarget } from './src/web/devProxyTarget';
|
|
|
|
export default defineConfig(({ mode }) => {
|
|
const env = loadEnv(mode, process.cwd(), '');
|
|
const proxyTarget = resolveDevProxyTarget(env);
|
|
console.log(`[vite] dev proxy target: ${proxyTarget}`);
|
|
|
|
const frontendPort = Number.parseInt(env.FRONTEND_PORT || env.VITE_FRONTEND_PORT || '', 10);
|
|
const resolvedFrontendPort = Number.isFinite(frontendPort) && frontendPort > 0 ? frontendPort : 5173;
|
|
const frontendHost = (env.VITE_DEV_HOST || '127.0.0.1').trim() || '127.0.0.1';
|
|
|
|
return {
|
|
root: 'src/web',
|
|
plugins: [react(), tailwindcss()],
|
|
build: {
|
|
outDir: '../../dist/web',
|
|
emptyOutDir: true,
|
|
},
|
|
server: {
|
|
host: frontendHost,
|
|
port: resolvedFrontendPort,
|
|
proxy: {
|
|
'^/api($|/)': {
|
|
target: proxyTarget,
|
|
changeOrigin: true,
|
|
},
|
|
'^/monitor-proxy($|/)': {
|
|
target: proxyTarget,
|
|
changeOrigin: true,
|
|
},
|
|
'^/v1($|/)': {
|
|
target: proxyTarget,
|
|
changeOrigin: true,
|
|
},
|
|
},
|
|
},
|
|
};
|
|
});
|