如果你看一下指南,useButation-Hook参数的 struct 是这样的.
const {
data,
error,
isError,
isIdle,
isLoading,
isPaused,
isSuccess,
mutate,
mutateAsync,
reset,
status,
} = useMutation(mutationFn, {
cacheTime,
mutationKey,
networkMode,
onError,
onMutate,
onSettled,
onSuccess,
retry,
retryDelay,
useErrorBoundary,
meta
})
异步axios函数的 struct 如下:
async function setSupplierRegister(
basic: Basic,
operator: Operator,
delivery: Delivery,
bank: Bank
): Promise<void> {
await axiosInstance.post("/register", {
basic: basic,
operator: operator,
delivery: delivery,
bank: bank,
});
}
异步函数需要4个参数,但在useButation钩子参数中只能检索到1个数据值.
export function useRegister(): UseMutateFunction<
void,
unknown,
any,
unknown
> {
const { mutate } = useMutation(
// (basic: Basic, operator: Operator, delivery: Delivery, bank: Bank) => setSupplierRegister(basic, operator, delivery, bank), error
(data: any) => setSupplierRegister(data),
);
return mutate;
}
我应该如何处理它以在useMutation函数中声明4个参数?