生产构建
构建前配置
至少核对:
dotenv
VITE_API_URL=https://api.example.com/
VITE_BASE_URL=/
VITE_WITH_CREDENTIALS=false如果前端和 API 跨域,后端需要正确配置允许来源、方法、请求头、凭据和暴露响应头。携带 Cookie 时不能使用 Access-Control-Allow-Origin: *。
执行构建
bash
npm ci
npm run typecheck
npm run lint
npm run build产物位于 dist/。先用 npm run preview 做本地烟雾测试,再部署到静态服务器或 CDN。
构建优化
项目已将 Naive UI、ECharts、编辑器和图标包拆分 chunk,并在首屏只同步注册 IconPark,其余图标空闲加载。图标选择器会加载大体积图标包,因此不要在首屏主动打开或预加载它。
发布验证
- 登录、退出、401 和登录后 redirect。
- 刷新首页和任意深层动态路由。
- API、WebSocket、图片、WASM 与 worker 地址。
- 文件上传、下载、导入和导出。
- 明暗主题、移动端和常见浏览器。
- 缓存更新:新 HTML 不应长期引用已清理的旧资源。
- 安全头、HTTPS、CORS 与 CSP。
缓存建议
index.html:不缓存或短缓存,确保及时获取新资源清单。- 带 hash 的 JS/CSS/字体:
public, max-age=31536000, immutable。 - API:由业务语义决定,不要让用户敏感响应进入公共缓存。