译零 TransZero · TanStack Query 中文文档
主站

Updater

更新于 2026-11-02 Angular 查看英文原文 ↗
TypeScript
1type Updater<TInput, TOutput> = TOutput | ((input: TInput) => TOutput);

定义于:packages/query-core/src/utils.ts:103

它既可以是类型为 TOutput 的普通值,也可以是一个接收 TInput 并返回 TOutput 的函数。
例如 setQueryData 风格的更新器就采用这种类型,它既接受新数据本身,也接受一个基于先前数据计算新数据的函数。参见 functionalUpdate。

类型参数

TInput

TInput

TOutput

TOutput

示例

TypeScript
1queryClient.setQueryData(['posts'], newPosts)2 3// Or, using an updater function that receives the current data:4queryClient.setQueryData(['posts'], (oldPosts) =>5  oldPosts ? [...oldPosts, newPost] : oldPosts,6)

本页为 TanStack Query 文档(Angular 版)的非官方中文翻译,原文由上游团队维护,遵循 MIT 许可。 译文如有偏差,以英文原文为准。

译自上游 59d11de