问题:每次重新部署容器后,浏览器持有旧 bundle,Next.js App Router 内部 Server Action ID("r"/"multi")与新服务器不匹配,导致客户端抛出 未捕获异常,触发全屏 "Application error"(周期性崩溃根因)。 修复: - 添加 src/app/global-error.tsx(根级错误边界),检测到 stale bundle 相关错误时自动调用 window.location.reload(),无感知恢复 - 添加 src/app/(admin)/error.tsx(admin 路由段错误边界),同样自动刷新 - 两个边界均提供「立即刷新」「重试」按钮,防止极端情况下自动刷新失效 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| nginx | ||
| public | ||
| src | ||
| .dockerignore | ||
| .env.development | ||
| .env.production | ||
| .gitignore | ||
| DEPLOY.md | ||
| Dockerfile | ||
| deploy.sh | ||
| docker-compose.yml | ||
| next.config.ts | ||
| package-lock.json | ||
| package.json | ||
| tsconfig.json | ||