Skip to content

构建 & 部署

前端部署通知用户刷新

发布新版本后,用户浏览器仍使用旧 JS/CSS,可能出现白屏或报错。

方案(按推荐度):

  1. version.json 轮询 — 构建时生成 version.json,前端每 5 分钟请求一次,不一致就弹提示。注意:version.json 需设置短 TTL(如 60s)避免 CDN 缓存导致检测失效
  2. 路由拦截器中检查 index.html 的 ETag 变化
  3. WebSocket 推送(成本高,不推荐小型项目)

开源项目打包发布流程

  1. 代码规范:ESLint + Prettier,提交前 lint-staged
  2. 打包:Rollup(库)/ Webpack(应用),输出 CommonJS + ESM 双格式
  3. 版本管理:standard-version 自动生成 CHANGELOG
  4. CI/CD:GitHub Actions 自动发布 npm
  5. 贡献指南:CONTRIBUTING.md + Issue Template + PR Template

Vite 项目部署 GitHub Pages

⚠️ Create React App 已于 2023 年被 React 团队弃用,推荐迁移到 Vite。

bash
# vite.config.js
base: '/repo-name/'
  1. vite.config.js 中设置 base 为仓库名
  2. yarn build 生成 dist 静态文件
  3. 使用 gh-pages 包:npx gh-pages -d dist
  4. 或配置 GitHub Actions 自动部署

Released under the MIT License.