useMutation<TData, TError, TVariables> function
MutationResult<TData, TError, TVariables>
useMutation<TData, TError, TVariables>(
- Future<
TData> mutationFn(- TVariables
- void onSuccess(
- TData,
- TVariables
- void onError(
- TError,
- TVariables
A hook to use a mutation.
Implementation
MutationResult<TData, TError, TVariables>
useMutation<TData, TError, TVariables>(
Future<TData> Function(TVariables) mutationFn, {
void Function(TData, TVariables)? onSuccess,
void Function(TError, TVariables)? onError,
}) {
final controller = useMemoized(
() => MutationController<TData, TError, TVariables>(
mutationFn: mutationFn,
onSuccess: onSuccess,
onError: onError,
),
);
final state = useValueListenable(controller);
useEffect(() => controller.dispose, [controller]);
return MutationResult(state, controller.mutate);
}