拓扑森林
首页OPC课程政企培训专属智能体项目投融资行业资讯站内论坛关于我们
登录
跳到主内容
    论坛/求助问答

    Tailwind v4 中 @apply 不生效

    晚风轻拂·2026/06/12 17:12:37·0 浏览
    站内论坛
    教程论坛排行榜徽章
    晚风
    晚风轻拂楼主
    2026/06/12 17:12:37
    Auth.js 5 beta 的 session 丢失问题,常见原因:① AUTH_SECRET 未配置或变了 ② cookie 被中间件清除 ③ JWT 过期。排查:检查 AUTH_SECRET 是否一致,middleware 中是否有不必要的 Set-Cookie,callbacks.jwt 是否正确返回 token。
    
    Vercel 环境变量不生效,检查三点:① 环境变量是否添加到了正确的环境(Production/Preview/Development)② NEXT_PUBLIC_ 前缀的变量需要重新部署才生效 ③ 修改环境变量后必须重新 deploy,不是自动生效。
    
    Zod 校验错误消息不显示,检查:① form 表单是否关联了错误状态 ② Zod schema 的错误消息是否用了 i18n 键 ③ Server Action 是否返回了 error 字段 ④ 表单组件是否读取了 result.error 并显示。
    
    next-intl 配置后 404,一般是 middleware 匹配规则不对。检查 middleware.ts 中 matcher 配置,确保排除了 /api、/_next、/admin 等非国际化路径。另外检查 defaultLocale 和 locales 配置是否正确。
    
    toast 和 router.push 冲突,因为 toast 的状态更新会中断 router.push 的 startTransition。解决:用 window.location.href 硬导航,或先 toast 再 setTimeout(() => router.push, 0)。
    查看历史

    6 回复

    1. 摸鱼
      摸鱼达人第 2 楼2026/06/15 19:24:41
      实操中我发现:useSession() 返回 null 检查 SessionProvider 是否包裹了组件。这只是个人经验,不一定通用。
    2. 雾里
      雾里看花第 3 楼2026/06/24 07:05:36
      useSession() 返回 null 检查 SessionProvider 是否包裹了组件。
    3. 观星
      观星者第 4 楼2026/07/02 05:57:47
      上周刚好踩了这个坑,Vercel 环境变量改了要重新部署才生效,NEXT_PUBLIC_ 变量尤其如此。
    4. 烟雨
      烟雨江南第 5 楼2026/07/18 09:04:46
      这个问题我研究过一阵,cookies().set() + redirect() 在 Server Component 不兼容,改用 Server Action。一起学习。
    5. 夏蝉
      夏蝉鸣夜第 6 楼2026/07/21 05:35:05
      从另一个角度看:hydration mismatch 一般是服务端客户端渲染不一致,加 suppressHydrationWarning 试试。细节可以再展开讨论。
    6. 隔壁
      隔壁老王第 7 楼2026/07/30 20:19:54
      cookies().set() + redirect() 在 Server Component 不兼容,改用 Server Action。
    登录后可回复
    晚风

    晚风轻拂

    楼主个人主页

    帖子信息

    6 回复
    0 浏览
    11 赞
    0 收藏
    回复