SuperAPI AI 工具集

tanstack-query-typescript-and-tooling

编程与开发

查看项目

更新于 10-16 08:36

技能介绍

用途:当任务涉及让 TanStack Query 的使用具备类型化、可测试和可维护性时使用本技能。

主要能力:涵盖 queryOptions、infiniteQueryOptions、mutationOptions 及相关类型化辅助模式;用于类型安全条件查询的 skipToken;全局查询键注册与模块增强;错误类型指导;测试配置与 QueryClient 测试包装器;@tanstack/eslint-plugin-query 的配置与规则路由。

使用方式:优先在需要在 hooks 与客户端调用间复用同一查询定义时使用 queryOptions、infiniteQueryOptions、mutationOptions 等辅助工厂。当真正的问题是类型化的禁用查询时,使用 skipToken 而非别扭的条件类型转换。全局键注册应保持窄范围且贴合领域,不要用巨大的 unknown[] 包装器冒充类型化。每个测试创建新的 QueryClient 或在测试间清空它;除非正在测试重试逻辑,否则在测试中禁用重试。让 ESLint 插件强制检查易遗漏的正确性边界,尤其是 no-void-query-fn 和 mutation-property-order。

适用场景:queryOptions、infiniteQueryOptions、mutationOptions、skipToken、推断丢失或全局查询键类型化问题;测试不稳定、测试中是否禁用重试、每个测试隔离 QueryClient;ESLint 插件配置或 Stable Query Client、No Unstable Deps 等规则名。

限制与边界:纯查询行为且不涉及类型或工具链的问题应使用 tanstack-query-fetching-and-cache;SSR 与 hydration 使用 tanstack-query-integration-and-rendering;mutation 生命周期与乐观更新使用 tanstack-query-mutations-and-sync。文档基线为 TanStack Query v5,工具快照为 @tanstack/eslint-plugin-query@5.95.2,快照日期 2026-03-24。