SuperAPI AI 工具集

tanstack-start

前端与建站

查看项目

更新于 10-15 23:33

技能介绍

用途:TanStack Start 是构建在 TanStack Router 与 Vite 之上的全栈 React 框架,采用客户端优先、按需启用服务端能力的模式,从路由到服务端函数保持类型安全。适用于 tanstack start、tanstack router、server function、createServerFn、createFileRoute 等触发场景,或任何 TanStack Start 项目开发。

主要能力:文件式路由($param 动态段、_prefix 无路径布局、__root.tsx 根布局);服务端函数 createServerFn 作为类型安全 RPC,替代内部数据访问的 REST/tRPC/GraphQL;createServerOnlyFn 保证工具永不进入客户端包;createMiddleware 组合认证、校验、日志等中间件;服务端路由可定义 API 端点;支持与 TanStack Query 的 useServerFn 集成;支持 BetterAuth 会话集成与受保护布局路由;可部署到 Node/Bun、Vercel、Cloudflare Workers、Netlify。

使用方式:路由加载器是同构的,会同时在服务端和客户端运行,因此不要在加载器中直接访问 process.env,应通过 createServerFn 或 createServerOnlyFn 包裹服务端逻辑。服务端函数可在路由加载器、组件(经 useServerFn)、其他服务端函数和事件处理器中调用。输入校验需使用运行时 schema(如 zod),仅用 TypeScript 注解无效,且校验器 API 需匹配项目锁定的 TanStack 版本。大型应用建议按 users.functions.ts(可任意导入)、users.server.ts(仅服务端)、schemas.ts(客户端安全)组织文件。

部署限制:Vercel 必须添加 nitro() Vite 插件,否则构建成功但返回 404;安装命令为 pnpm add nitro。Monorepo 中需在 Vercel 项目设置 rootDirectory 指向应用目录,框架预设选 TanStack Start 或自动检测,不要手动设置 outputDirectory,Nitro 会自动生成 .vercel/output。无 CLI 部署,推送 git 自动部署,仅紧急热修使用 vercel --prod。

其他限制:资料未提供具体收费、价格与平台支持细节。