import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' import { fileURLToPath, URL } from 'node:url' // HTTPS: 启动时加 --https 参数,或设环境变量 VITE_HTTPS=true // 默认 HTTP(局域网测试友好,无证书问题) const useHttps = process.argv.includes('--https') || process.env.VITE_HTTPS === 'true' let sslPlugin = [] if (useHttps) { try { const basicSsl = (await import('@vitejs/plugin-basic-ssl')).default sslPlugin = [basicSsl()] } catch { /* basicSsl not installed, skip */ } } export default defineConfig({ plugins: [vue(), ...sslPlugin], resolve: { alias: { '@': fileURLToPath(new URL('./src', import.meta.url)) } }, server: { port: 3001, host: '0.0.0.0', proxy: { '/api': { target: 'http://localhost:8080', changeOrigin: true }, '/ws': { target: 'http://localhost:8080', ws: true } } } })