mutationOptions
概述
1function mutationOptions<TData = unknown, TError = Error, TVariables = void, TOnMutateResult = unknown>(options: WithRequired<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">): WithRequired<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">;2function mutationOptions<TData = unknown, TError = Error, TVariables = void, TOnMutateResult = unknown>(options: Omit<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">): Omit<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">;WithRequired<UseMutationOptions>→WithRequired<UseMutationOptions>:你通常可以向mutationOptions传入所有能传给useMutation的参数。此重载要求提供一个mutationKey,以便后续通过该mutationKey查找该修改(例如使用useMutationState)。Omit<UseMutationOptions>→Omit<UseMutationOptions>:你通常可以向mutationOptions传入所有能传给useMutation的参数。此重载无需提供mutationKey——当你后续不需要通过mutationKey过滤器定位该修改时(例如使用useMutationState),请选用此形式;它仍可通过其他过滤器(如status)被观察到。
调用签名
1function mutationOptions<TData = unknown, TError = Error, TVariables = void, TOnMutateResult = unknown>(options: WithRequired<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">): WithRequired<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">;定义于:packages/preact-query/src/mutationOptions.ts:32
你通常可以向 mutationOptions 传入所有能传给 useMutation 的参数。此重载要求提供一个 mutationKey,以便后续通过该 mutationKey 查找该修改(例如使用 useMutationState)。
类型参数
TData
TData = unknown
TError
TError = Error
TVariables
TVariables = void
TOnMutateResult
TOnMutateResult = unknown
参数
options
WithRequired<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">
要使用的修改选项,与传给 useMutation 的内容完全相同,但必须包含 mutationKey。
返回值
WithRequired<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">
原始选项对象,未作任何更改。
参见
useMutation:用于执行这些选项所描述的修改。
示例
在其他位置通过其 mutationKey 查找该修改,例如实现全局“正在保存…”指示器:
1import { mutationOptions, useMutationState } from '@tanstack/preact-query'2 3const createPostOptions = mutationOptions({4 mutationKey: ['posts', 'create'],5 mutationFn: createPost,6})7 8function SavingIndicator() {9 const isCreatingPost = useMutationState({10 filters: { mutationKey: createPostOptions.mutationKey, status: 'pending' },11 }).length > 012 13 return isCreatingPost ? <span>Saving…</span> : null14}调用签名
1function mutationOptions<TData = unknown, TError = Error, TVariables = void, TOnMutateResult = unknown>(options: Omit<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">): Omit<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">;定义于:packages/preact-query/src/mutationOptions.ts:70
你通常可以向 mutationOptions 传入所有能传给 useMutation 的参数。此重载无需提供 mutationKey——当你后续不需要通过 mutationKey 过滤器定位该修改时(例如使用 useMutationState),请选用此形式;它仍可通过其他过滤器(如 status)被观察到。
类型参数
TData
TData = unknown
TError
TError = Error
TVariables
TVariables = void
TOnMutateResult
TOnMutateResult = unknown
参数
options
Omit<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">
要使用的修改选项,与传给 useMutation 的内容完全相同,且不包含 mutationKey。
返回值
Omit<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">
原始选项对象,未作任何更改。
备注
有关通过 useMutationState 查找修改的示例,请参阅另一重载的示例。
参见
useMutation:用于执行这些选项所描述的修改。
示例
1import { mutationOptions, useMutation } from '@tanstack/preact-query'2 3export const createPostOptions = mutationOptions({4 mutationFn: createPost,5})6 7function CreatePost() {8 const mutation = useMutation(createPostOptions)9 return <button onClick={() => mutation.mutate({ title: 'Hello' })}>Create</button>10}参数
options
Omit<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">
要使用的修改选项,与传给 useMutation 的内容完全相同,且不包含 mutationKey。
options 属性
基于 UseMutationOptions 构建。详见上方类型定义中对其所作的变更。
返回值
Omit<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">
原始选项对象,未作任何更改。
返回值属性
基于 UseMutationOptions 构建。详见上方类型定义中对其所作的变更。