单击按钮执行 GraphQL-Mutation
Execute GraphQL-Mutation on Button-Click
我正在尝试将 GraphQL-mutation 连接到我的 React-app 中的按钮。到目前为止,我已经尝试这样做:
const Component = () => {
...
const [useTestProgramMutation, {data, loading, error}] =
useMutation(TESTPROGRAM_MUTATION);
...
return (
<>
<button onClick={() => useTestProgramMutation({
variables: {
examinationOrderId: order_id,
testProgramId: testProgram.id
}
})}>
Click me!
</button>
...
</>
)
}
但是编译失败并出现错误:
React Hook "useTestProgramMutation" cannot be called inside a callback.
React Hooks must be called in a React function component or a custom React
Hook function react-hooks/rules-of-hooks
但是,我不太明白这个错误。那么我必须在哪里调用该函数?
更改由 useMutation
返回的函数的名称似乎已经成功了。我将它从 useTestProgramMutation
更改为 testProgramMutation
。
现在可以编译了。如果有人知道这是为什么,我会非常想知道。
我正在尝试将 GraphQL-mutation 连接到我的 React-app 中的按钮。到目前为止,我已经尝试这样做:
const Component = () => {
...
const [useTestProgramMutation, {data, loading, error}] =
useMutation(TESTPROGRAM_MUTATION);
...
return (
<>
<button onClick={() => useTestProgramMutation({
variables: {
examinationOrderId: order_id,
testProgramId: testProgram.id
}
})}>
Click me!
</button>
...
</>
)
}
但是编译失败并出现错误:
React Hook "useTestProgramMutation" cannot be called inside a callback.
React Hooks must be called in a React function component or a custom React
Hook function react-hooks/rules-of-hooks
但是,我不太明白这个错误。那么我必须在哪里调用该函数?
更改由 useMutation
返回的函数的名称似乎已经成功了。我将它从 useTestProgramMutation
更改为 testProgramMutation
。
现在可以编译了。如果有人知道这是为什么,我会非常想知道。