onCompleted 是否与 useMutation 一起使用?

Sib*_*ani 6 react-apollo-hooks

我在反应项目中使用 useMutation 钩子。突变成功运行,但之后没有达到 onCompleted 。

我已经在突变中将 notifyOnNetworkStatusChange 设置为 true ,但这似乎没有帮助。

const [createUser] = useMutation(SIGNUP_MUTATION);

createUser({
  variables: {
     firstname,
     lastname,
     email
  },
  notifyOnNetworkStatusChange: true,
  onCompleted: (data) => {
     // not called
     confirm(data);
  }
});
Run Code Online (Sandbox Code Playgroud)

小智 15

查看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>
  );
Run Code Online (Sandbox Code Playgroud)