跳到主内容

Vercel 部署后 CSS 样式丢失

Sophie Lambert518 浏览
SO
Zod 校验错误消息不显示,检查:① form 表单是否关联了错误状态 ② Zod schema 的错误消息是否用了 i18n 键 ③ Server Action 是否返回了 error 字段 ④ 表单组件是否读取了 result.error 并显示。

Prisma 事务中 create 返回的 id 在 commit 前可能不可用。如果需要用 id 生成 slug,可以在事务内先 create 再 update slug,或用 cuid() 手动生成 id。注意 Prisma @default(cuid()) 在 create 时生成。

toast 和 router.push 冲突,因为 toast 的状态更新会中断 router.push 的 startTransition。解决:用 window.location.href 硬导航,或先 toast 再 setTimeout(() => router.push, 0)。

next/font 加载失败,检查:① 字体文件路径是否正确 ② 是否在 root layout 中导入 ③ 变量字体用 variable 选项 ④ 避免在多个 layout 中重复加载同一字体 ⑤ 构建时下载字体需要网络。
部署运维前端
查看历史

9 回复

  1. 需求
    需求翻译机第 2 楼
    next/dynamic + ssr:false 不能在 Server Component 用,要包一层 'use client'。
  2. 算法
    算法炼丹师第 3 楼
    我的看法略有不同:cookies().set() + redirect() 在 Server Component 不兼容,改用 Server Action。
  3. 吃瓜
    吃瓜群众第 4 楼
    Prisma 连接池在 Serverless 环境设 connection_limit=1,加 ?pgbouncer=true。
  4. 慢慢
    慢慢来第 5 楼
    从另一个角度看:Tailwind v4 升级后 @tailwind 指令改为 @import 'tailwindcss'。踩了很多坑才总结出来的。
  5. 摸鱼
    摸鱼的锦鲤第 6 楼
    说说我自己的经历:Vercel 环境变量改了要重新部署才生效,NEXT_PUBLIC_ 变量尤其如此。欢迎私信深入交流。
  6. 巡山
    巡山的狐狸第 7 楼
    有个更优的方案:Vercel 环境变量改了要重新部署才生效,NEXT_PUBLIC_ 变量尤其如此。欢迎大家补充。
  7. YU
    Yusuf Al-Amin第 8 楼
    这个观点我很认同,middleware 里 pathname 含 locale 前缀,用 includes() 不要用精确匹配。效果因项目而异,建议实际测试。
  8. NG
    Nguyen Minh Anh第 9 楼
    从另一个角度看:Vercel 环境变量改了要重新部署才生效,NEXT_PUBLIC_ 变量尤其如此。
  9. 近水
    近水含烟第 10 楼
    我调研过这块,useSession() 返回 null 检查 SessionProvider 是否包裹了组件。如有不对请指正。
登录后可回复
    数据正在加载中…