mutationOptions
호출 시그니처
function mutationOptions<TData, TError, TVariables, TOnMutateResult>(options): WithRequired<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">;
정의 위치: preact-query/src/mutationOptions.ts:34
일반적으로 useMutation에 전달할 수 있는 모든 항목을 mutationOptions에도 전달할 수 있습니다. 하나의
나중에 예를 들어 다음을 사용해 뮤테이션을 조회할 수 있도록 이 오버로드에는 mutationKey가 필요합니다
useMutationState.
타입 매개변수
TData
TData = unknown
TError
TError = Error
TVariables
TVariables = void
TOnMutateResult
TOnMutateResult = unknown
매개변수
옵션
WithRequired<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">
사용할 뮤테이션 옵션으로, useMutation에 전달하는 것과 동일하며 다음을 포함합니다:
mutationKey가 필요합니다.
반환값
WithRequired<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">
변경되지 않은 동일한 옵션 객체입니다.
참조
이 옵션이 설명하는 뮤테이션을 실행하기 위한 useMutation입니다.
예시
전역 "저장 중…" 표시기 등의 용도로 mutationKey를 통해 다른 위치에서 뮤테이션을 조회합니다:
import { mutationOptions, useMutationState } from '@tanstack/preact-query'
const createPostOptions = mutationOptions({
mutationKey: ['posts', 'create'],
mutationFn: createPost,
})
function SavingIndicator() {
const isCreatingPost = useMutationState({
filters: { mutationKey: createPostOptions.mutationKey, status: 'pending' },
}).length > 0
return isCreatingPost ? <span>Saving…</span> : null
}
호출 시그니처
function mutationOptions<TData, TError, TVariables, TOnMutateResult>(options): Omit<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">;
정의 위치: preact-query/src/mutationOptions.ts:74
일반적으로 useMutation에 전달할 수 있는 모든 항목을 mutationOptions에도 전달할 수 있습니다. 그렇지 않습니다
이 오버로드에서는 mutationKey가 필수입니다 — 나중에 뮤테이션을 조회할 필요가 없을 때 사용합니다
(예: useMutationState 사용).
타입 매개변수
TData
TData = unknown
TError
TError = Error
TVariables
TVariables = void
TOnMutateResult
TOnMutateResult = unknown
매개변수
옵션
Omit<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">
사용할 뮤테이션 옵션으로, useMutation에 전달하는 항목과 동일하지만 다음 항목은 제외합니다
mutationKey.
반환값
Omit<UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, "mutationKey">
변경되지 않은 동일한 옵션 객체입니다.
참조
이 옵션이 설명하는 뮤테이션을 실행하기 위한 useMutation입니다.
비고
mutationKey가 없으면 useMutationState를 통해 다른 곳에서 뮤테이션을 조회할 수 없습니다 — 다음을 참조하세요
이에 대해서는 다른 오버로드의 예제를 참조합니다.
예시
import { mutationOptions, useMutation } from '@tanstack/preact-query'
export const createPostOptions = mutationOptions({
mutationFn: createPost,
})
function CreatePost() {
const mutation = useMutation(createPostOptions)
return <button onClick={() => mutation.mutate({ title: 'Hello' })}>Create</button>
}