在您决定使用新工具之前,了解它与竞争对手的比较总是很有帮助的!
此比较表力求尽可能准确和公正。如果您使用了其中任何一个库,并觉得信息可以改进,请随时使用本页面底部的“在 GitHub 上编辑此页面”链接提出修改建议(并附带说明或证据)。
特性/功能键
TanStack Router / Start | React 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 | 🛑 | ✅ | ✅ |
您的每周 JavaScript 资讯。每周一免费发送给超过 10 万开发者。