Next.js 真让人抓狂
💡
原文中文,约8500字,阅读约需21分钟。
📝
内容提要
作者对Next.js感到失望,特别是在日志记录和中间件设计方面。他指出在生产环境中配置日志系统困难,中间件功能有限,无法有效传递信息。尽管尝试多种方法,仍感到挫败,认为Vercel应改进,并对开发者支持不满,最终决定不再使用Next.js。
🎯
关键要点
- 作者对Next.js感到失望,特别是在日志记录和中间件设计方面。
- 生产环境中配置日志系统困难,Next.js默认仅在开发环境启用日志记录。
- 中间件功能有限,最多只能传递4个参数,无法有效传递信息。
- 作者尝试使用AsyncLocalStorage来改进日志记录,但仍然遇到问题。
- 中间件的设计缺陷导致无法在页面和布局层有效记录日志。
- 作者认为Next.js的中间件系统设计失败,决定不再使用Next.js。
- Vercel有能力改进Next.js,但目前的支持和文档不够完善。
- 作者对Next.js的GitHub问题跟踪器表示失望,认为响应时间极慢。
- 作者总结认为Next.js存在许多漏洞和边界情况,决定在未来开发中不再使用。
❓
延伸问答
作者对Next.js的主要不满是什么?
作者对Next.js在日志记录和中间件设计方面感到失望,认为配置生产环境中的日志系统困难且中间件功能有限。
Next.js中间件的设计缺陷有哪些?
中间件最多只能传递4个参数,无法有效传递信息,也不支持多个中间件的链式调用。
作者尝试了哪些方法来改进日志记录?
作者尝试使用AsyncLocalStorage来改进日志记录,但仍然遇到问题,最终未能成功。
Vercel在Next.js的支持方面存在哪些不足?
作者认为Vercel的支持和文档不够完善,GitHub问题跟踪器的响应时间极慢,导致开发者难以获得帮助。
作者决定不再使用Next.js的原因是什么?
作者总结认为Next.js存在许多漏洞和边界情况,且在开发中遭遇持续的痛苦,因此决定不再使用。
Next.js在生产环境中日志记录的默认设置是什么?
Next.js默认仅在开发环境启用日志记录,生产环境中需要手动配置日志系统。
➡️