我如何在React查询中输入onSuccess数据?



我有API调用函数(httpClientaxios实例)


interface IRegisterResponse {
accessToken: string;
}
export const register = async ({
name,
password,
token,
}: IRegisterParams) =>
await httpClient.post<IRegisterResponse>('register', {
name,
password,
token,
});

我有useMutation钩子处理来自我的API调用

const { mutate: registerMutation } = useMutation(
['register'],
register,
{
onSuccess: ({ accessToken }) => console.log(accessToken),
}
);

但在onSuccess回调中,Property 'accessToken' does not exist on type 'AxiosResponse<IRegisterResponse, any>'消息突出accessToken

我做错了什么,我应该怎么输入?

您正在返回axios响应,而不是数据

onSuccess: ({ data: { accessToken } }) => console.log(accessToken)

export const register = async ({
name,
password,
token,
}: IRegisterParams) =>
(await httpClient.post<IRegisterResponse>('register', {
name,
password,
token,
})).data;

最新更新