用途:协调 TanStack Query 中各查询的执行时机与依赖关系,包括 enabled 条件启用、skipToken、依赖查询、useQueries 动态并行查询、禁用查询及后台刷新指示。
主要能力与用法: 使用 useQuery 的 enabled 选项按依赖条件启用查询,例如 enabled: Boolean(props.userId) 或 enabled: userId !== undefined。 需要动态并行执行多个查询时使用 useQueries,通过 ids.map 为每个查询生成独立 queryKey,如 ['message', id] 或 ['user', id]。 通过 useIsFetching 获取当前进行中的请求计数,用 count > 0 单独展示全局后台刷新指示,避免影响已有数据的渲染。
常见误用与限制: 不要把 enabled 永久设为 false 来模拟禁用查询,这会绕过正常失效与依赖驱动的缓存行为,应改为依据条件动态启用,如 enabled: term.length > 0。 useQueries 中不要为不同项复用同一 queryKey,否则可能共享占位、选择或缓存数据,应为每项附加唯一标识。 isFetching 包含数据已存在后的后台刷新,不能仅用它切换整页加载态,否则后台刷新会导致全页 spinner。
资料未提供更完整的配置项、错误处理、skipToken 具体写法及版本兼容等信息。