Я определил следующую мутацию и тип ввода:
extend type Mutation {
signup(input: SignupReq!): SignupStatus!
}
input SignupReq {
email: String!
password: String!
}
используя площадку graphql:
mutation signup{signup(input:{password:"blabla", email: "[email protected]"}){success, message}}
он возвращает:
{
"data": {
"signup": {
"success": true,
"message": "Success!"
}
}
}
чего я и ожидал.
но как мне вызвать эту мутацию из моего клиента React?
то, что у меня есть сейчас:
const SIGNUP_MUTATION = gql`
mutation SignupUser($input: SignupReq!) {
signup(signupReq: $input) {success, message, token}
}
`
const [email, setEmail] = useState('')
const [password, setPassword] = useState('')
const [signup, { data, loading, error }] = useMutation(SIGNUP_MUTATION)
const { data, loading, error } = await signup({ variables: { email, password } })
что довольно стандартно.
но я упускаю кое-что, что просто не могу определить. Причина запуска сценария React дает мне следующее сообщение об ошибке:
'Field "signup" argument "input" of type "SignupReq!" is required, but it was not provided.',
Как мне сделать правильный вызов Graphql из реакции. Мне не удалось найти никакой документации о том, как использовать типы ввода для мутаций из React.
любая помощь приветствуется.
Ким