import { defineConfig } from 'vite' import react from '@vitejs/plugin-react' import tailwindcss from '@tailwindcss/vite' // https://vite.dev/config/ export default defineConfig({ // base 必须为默认 '/':相对 base 在 /notes/:slug 深链下会把资源解析到 // /notes/assets/… 导致白屏(设计 §8.3-2,禁止修改) base: '/', plugins: [react(), tailwindcss()], server: { proxy: { // 同源是 Cookie/CSRF 成立的前提(§10.5) // changeOrigin:false —— 保留浏览器原始 Host(localhost:5173), // 否则后端 Origin 校验会因 Host 被改写为 127.0.0.1:8080 而判定跨源 403。 '/api': { target: 'http://127.0.0.1:8080', changeOrigin: false, }, }, }, build: { // 产物内容 hash 文件名(§8.3-5) assetsDir: 'assets', // 不做手动 codeSplitting 分组:分组 chunk 会被提升进入口静态依赖, // HTML 对其发出 modulepreload,导致 lazy() 路由的 CodeMirror 在 // 所有页面被预加载(Lighthouse unused-javascript 549KiB 的根因)。 }, })