Updater
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)