onCompleted 是否与 useMutation 一起使用?
Does onCompleted works with useMutation?
我在 React 项目中使用 useMutation 挂钩。突变运行成功,但之后未达到 onCompleted。
我已经在变更中将 notifyOnNetworkStatusChange 设置为 true 但这似乎没有帮助。
const [createUser] = useMutation(SIGNUP_MUTATION);
createUser({
variables: {
firstname,
lastname,
email
},
notifyOnNetworkStatusChange: true,
onCompleted: (data) => {
// not called
confirm(data);
}
});
查看 useMutation 的 api 似乎您在错误的地方使用了 onCompleted
。它应该是 useMutation
定义的一部分。
const [createUser] = useMutation(
SIGNUP_MUTATION,
{
onCompleted(data) {
confirm(data);
}
}
);
return (
<div>
<form
onSubmit={e => {
e.preventDefault();
createUser({ variables: { firstname, lastname, email } }); // assuming `firstname`, `lastname` and `email` are defined somewhere.
}}
>
<input type="text" />
<button type="submit">Signup</button>
</form>
</div>
);
几年后——我们现在可以这样做了:
const [saveFormData] = useMutation(SAVE_FORM_DATA_MUTATION);
saveFormData({
variables: {
myVariable: 'test variable'
},
update: (cache, data) => {
//do updates here
}
})
我在 React 项目中使用 useMutation 挂钩。突变运行成功,但之后未达到 onCompleted。
我已经在变更中将 notifyOnNetworkStatusChange 设置为 true 但这似乎没有帮助。
const [createUser] = useMutation(SIGNUP_MUTATION);
createUser({
variables: {
firstname,
lastname,
email
},
notifyOnNetworkStatusChange: true,
onCompleted: (data) => {
// not called
confirm(data);
}
});
查看 useMutation 的 api 似乎您在错误的地方使用了 onCompleted
。它应该是 useMutation
定义的一部分。
const [createUser] = useMutation(
SIGNUP_MUTATION,
{
onCompleted(data) {
confirm(data);
}
}
);
return (
<div>
<form
onSubmit={e => {
e.preventDefault();
createUser({ variables: { firstname, lastname, email } }); // assuming `firstname`, `lastname` and `email` are defined somewhere.
}}
>
<input type="text" />
<button type="submit">Signup</button>
</form>
</div>
);
几年后——我们现在可以这样做了:
const [saveFormData] = useMutation(SAVE_FORM_DATA_MUTATION);
saveFormData({
variables: {
myVariable: 'test variable'
},
update: (cache, data) => {
//do updates here
}
})