侧边栏壁纸
博主头像
Wood Chen

独唱独酬,独行独坐还独卧

  • 累计撰写 232 篇文章
  • 累计创建 191 个标签
  • 累计收到 9 条评论

目 录CONTENT

文章目录

记几个nextjs开发时遇到的坑

wood
2025-03-29 / 0 评论 / 0 点赞 / 3 阅读 / 0 字

登录状态无法保存

首先, 我已经设置了@/lib/api.ts的全局axios, 并且添加了@/lib/auth-context.tsx进行验证相关逻辑, 使用localStorage来临时存储用户信息.

但是!!! 登录后一直反复重定向跳转, /login跳到 /admin/xxx, 然后再跳回/login, 明明后端go那边验证cookie是正确的, 前端浏览器控制台也是正确的, 就是一直错.

问claude, 给我加了巨多的验证和判断, 还是不生效.

最后, 删除所有多余逻辑, 再重定向和检测前端文件时, 发现了一个问题.

我是前端编译成静态文件的:

output: "export",
distDir: "out",
  ```
  导致编译出来是这样的: 
  ```text
  /login.html
  /admin/xxxx.html
  /admin/yyyy.html
  ```

然后后端路由和api部分, 使用url是这样的
```text
/login
/admin/xxxx
/admin/yyyy

所以, 我在next.config.ts加了trailingSlash: true,, 然后把路由都改成/login/, /admin/xxxx/ 之后, 就好了, 后端的重定向逻辑也需要改.

app目录下,目录名和路径是一致的

这个问题是cursor写的, 我一开始也没检查, 后来点击nav里的链接显示404才发现…


可能只有我会碰到吧…毕竟都是简单的东西, 都是AI的锅

0

评论区