为什么开发者转向TanStack Start
React 世界充满了各种观点,每隔几年就会出现一个新框架来改变我们构建应用的思维方式。Next.js 长期以来一直是默认选择,它提供了一条清晰的生产路径,让 React 更容易管理。但最近,越来越多的开发者开始转向 TanStack Start——一个由 TanStack Query 和 TanStack Router 背后同一团队构建的全新全栈框架。
他们离开并不是因为 Next.js 坏了。他们离开是因为 TanStack 感觉更轻量、更清晰,更接近原生 React,而且它把如何运作的控制权还给了开发者。
1、对 Next.js 日益增长的挫败感
许多开发者曾经因为 Next.js 的简洁而喜爱它。但随着它的发展,复杂性也随之增长。转向 App Router、引入 React Server Components 以及不断出现的新模式,让这个框架变得越来越难以跟上。
在社区讨论中,一位开发者总结道:"Next.js 因为不断的变化和复杂性失去了我。这些好处不值得带来如此大的认知负担。" 其他人则提到调试变得越来越令人困惑,新功能经常会破坏旧的模式。
另一个反复出现的问题是 Next.js 感觉与 Vercel 绑定太紧。许多开发者欣赏 Vercel 作为一家公司,但他们觉得这个框架变得越来越关注平台而不是开发者。正如一位用户所说:"很难将 Next.js 和 Vercel 分开。人们列举的大多数优势实际上是 Vercel 的功能。"
2、TanStack 值得信赖的基础
TanStack 并非凭空出现。它源于 TanStack Query(前身为 React Query)的成功——这个库彻底改变了开发者处理状态和服务器数据的方式。它用一种"就是说得通"的东西替代了复杂的 Redux 配置。
这种不走捷径的简洁理念正是推动人们对 TanStack Start 产生兴趣的原因。开发者们已经信任 TanStack 团队,因为他们的工具始终如一地解决实际问题,而不隐藏幕后的运作方式。
正如一位开发者所说:"他们在路由和服务器逻辑方面所做的事情,就像他们在状态管理方面已经做的那样——让一切变得简单、可预测且类型安全。"
3、TanStack Start 到底是什么
TanStack Start 是一个全栈 React 框架,建立在 TanStack Router 之上,由 Vite 提供快速的构建能力和 Vite Env API 支持,其中包括 Nitro 在内的多个部署插件。它将客户端交互性与服务器端渲染相结合,同时保持一切的显式性和类型安全。
开发者喜欢的核心功能:
- 类型安全的路由:一切都在编译时验证。如果路由或参数发生变化,你会立即知道。
- 服务器函数:你可以在同一个代码库中编写后端逻辑(如数据库查询或 API 调用),并从客户端安全地调用。
- 客户端优先渲染:你获得了 SSR 的性能优势,但导航体验像单页应用。
- 简单的部署:只需最少的设置即可在 Netlify、Cloudflare、Vercel 或你自己的 Node 服务器上运行。
它并不是要重新发明 React。它是为 React 提供了一个易于理解的现代化骨干。
4、为什么开发者更偏爱它
社区中的开发者反复提到几个主题:
- 更少的魔法,更多的控制。像 Next.js 和 Remix 这样的框架依赖于"魔法"约定——即自动发生的行为。TanStack Start 避免了这一点。你可以选择数据如何加载、在哪里运行、以及渲染什么。
- 更接近 React 的感觉。许多开发者说,一旦开始使用 TanStack Start,他们就忘了自己还在使用一个框架。它感觉就像普通的 React 加上一些有用的额外功能。
- 更流畅的开发体验。类型安全的路由、集成的服务器函数和可预测的数据获取让调试更快。一位 Reddit 用户说:"当我第一次尝试时,我以为我遗漏了什么,因为它太简单了——它就是能用。"
- 灵活的托管和工具链。使用 Vite 和 Nitro 意味着你可以在任何地方构建和部署。你不会被锁定在某一家公司的技术栈或运行时中。
原文链接: Why developers are leaving Next.js for TanStack Start, and loving it
汇智网翻译整理,转载请标明出处