框架
版本

对比 | TanStack Router & TanStack Start vs Next.js vs React Router / Remix

在您决定使用新工具之前,了解它与竞争对手的比较总是很有帮助的!

此比较表力求尽可能准确和公正。如果您使用了其中任何一个库,并觉得信息可以改进,请随时使用本页面底部的“在 GitHub 上编辑此页面”链接提出修改建议(并附带说明或证据)。

特性/功能键

  • ✅ 一等、内置,无需额外配置或代码即可使用
  • 🟡 部分支持(5分制)
  • 🟠 通过附加组件/社区包支持
  • 🔶 可能,但需要自定义代码/实现/类型转换
  • 🛑 不受官方支持
TanStack Router / StartReact Router DOM (网站)Next.JS (网站)
Github 仓库 / 星星数
打包大小
历史、内存和哈希路由器🛑
嵌套 / 布局路由🟡
类 Suspense 路由转换
类型安全路由🟡 (1/5)🟡
基于代码的路由🛑
基于文件的路由
虚拟/程序化基于文件的路由🛑
路由器加载器
SWR 加载器缓存🛑
路由预取
自动路由预取
路由预取延迟🔶🛑
路径参数
类型安全路径参数🛑
类型安全路由上下文🛑🛑
路径参数验证🛑🛑
自定义路径参数解析/序列化🛑🛑
排名路由
活动链接自定义
乐观 UI🔶
类型安全绝对 + 相对导航🟡 (1/5 通过 buildHref 工具)🟠 (IDE 插件)
路由挂载/转换/卸载事件🛑🛑
开发工具🟠🛑
基本搜索参数
搜索参数 Hooks
<Link/>/useNavigate 搜索参数 API🟡 (仅通过 to/search 选项提供搜索字符串)🟡 (仅通过 to/search 选项提供搜索字符串)
JSON 搜索参数🔶🔶
类型安全搜索参数🛑🛑
搜索参数模式验证🛑🛑
搜索参数不可变性 + 结构共享🔶🛑
自定义搜索参数解析/序列化🔶🛑
搜索参数中间件🛑🛑
Suspense 路由元素
路由错误元素
路由挂起元素
<Block>/useBlocker🔶 (无硬刷新或跨域导航)🛑
延迟基元
导航滚动恢复
元素滚动恢复🛑🛑
异步滚动恢复🛑🛑
路由器失效
运行时路由操作(战争迷雾)🛑
并行路由🛑🛑
--------
全栈------
SSR
流式 SSR
通用 RPCs🛑🛑
通用 RPC 中间件🛑🛑
React 服务器函数🛑
React 服务器函数中间件🛑🛑
API 路由
API 中间件🛑
React 服务器组件🛑🟡 (实验性)
<Form> API🛑
我们的合作伙伴
Code Rabbit
Netlify
Neon
Clerk
Convex
Sentry
订阅 Bytes

您的每周 JavaScript 资讯。每周一免费发送给超过 10 万开发者。

Bytes

无垃圾邮件。您可以随时取消订阅。

订阅 Bytes

您的每周 JavaScript 资讯。每周一免费发送给超过 10 万开发者。

Bytes

无垃圾邮件。您可以随时取消订阅。