用途:该资料是一份按顺序执行的分步迁移清单,指导开发者将 Next.js App Router 项目迁移到 TanStack Start,包含迁移前准备、概念映射、各步骤转换及迁移后检查。
主要能力与用法:先建迁移分支并安装依赖(npm i @tanstack/react-start @tanstack/react-router;npm i -D vite @vitejs/plugin-react),卸载 Next.js 相关包。随后按步骤完成:用 vite.config.ts 的 tanstackStart() 插件(须在 react() 之前)替换 next.config.js 并更新 package.json 脚本;创建 src/router.tsx 路由工厂;将 layout 转为 src/routes/__root.tsx 根路由;将页面转为文件路由(动态段用 $param,参数经 Route.useParams() 获取);Server Actions 改写为 createServerFn(),数据获取用 loader 配合 server function;API 路由改为 server.handlers;导航改用 @tanstack/react-router 的 Link 并以 params 属性传参;中间件改为 src/start.ts 中 createMiddleware();元数据改用路由 head 属性。最后移除所有 "use server" 与 "use client" 指令及 next/* 导入,运行 npm run dev 验证。
关键限制与注意:TanStack Start 默认同构,所有代码在两环境运行,服务端逻辑必须放入 createServerFn;类型完全推断,不应强制类型转换或标注;不使用 "use server" 指令;Link 的 to 不应插值参数。资料未提供具体版本要求、性能数据或收费信息。