我正在尝试将useMutation
用于我的graphql API,但它似乎没有进行任何调用,
这是代码
export async function bulkImport(importRequest: BulkImportRequest): Promise<string> {
const [postBulkImport, { data }] = useMutation(postBulkImportRequest, {
variables: importRequest,
});
await postBulkImport({ variables: importRequest });
return data?.requestId;
}
以及我在React组件中调用的CCD_ 2。
我正在尝试使用useMutation而不是mutate
重写下面的代码。波纹管代码工作正常。
export async function bulkImport(importRequest: BulkImportRequest): Promise<string> {
const response = await mutate(postBulkImportRequest, importRequest);
return response?.data?.postBulkImportRequest?.requestId;
}
我不确定当我使用useMutation时我遗漏了什么,实际上我不确定它们是否相同。
如有任何建议,将不胜感激
useMutation
是React Hook,因此只能从React功能组件的顶层使用。
当您尝试从bulkImport
函数中使用它时,不会发生任何事情,因为它不在React组件的顶级。
为了成功地使用useMutation
,您需要(非常显著地(重写您的组件。