У меня есть следующая мутация, которая работает на детской площадке.
mutation UpdateBoolean($newValue: Boolean!, $id: Int) {
updateOneSetting(data: { darkMode: $newValue }, where: { id: $id }) {
id
darkMode
}
}
// variables: {"id": 1, "newValue": false}
Однако она не работает, когда я делаю то же самое с моим клиентом apollo при реакции, показывая ошибку: Unhandled Rejection (Error): Network error: Response not successful: Received status code 400
.
const UPDATE_BOOLEAN = gql`
mutation UpdateBoolean($newValue: Boolean!, $id: Int!) {
updateOneSetting(data: { darkMode: $newValue }, where: { id: 1 }) {
id
darkMode
}
}
`;
const ToggleLabel: React.FC<ToggleLabelProps> = (props: ToggleLabelProps) => {
const id = 1;
const [mutation] = useMutation(UPDATE_BOOLEAN);
const onChange = (
event: React.ChangeEvent<HTMLInputElement>,
checked: boolean
) => {
console.log(checked); // true
mutation({ variables: { newValue: checked, id: id } });
};
...
`;
Я не совсем уверен, что указывает на ошибку? Может ли кто-нибудь дать мне предложение?
РЕДАКТИРОВАТЬ: Ошибка:
Error: Network error: Response not successful: Received status code 400
at new ApolloError (ApolloError.ts:46)
at Object.error (QueryManager.ts:255)
at notifySubscription (Observable.js:140)
at onNotify (Observable.js:179)
at SubscriptionObserver.error (Observable.js:240)
at observables.ts:15
at Set.forEach (<anonymous>)
at Object.error (observables.ts:15)
at notifySubscription (Observable.js:140)
at onNotify (Observable.js:179)
at SubscriptionObserver.error (Observable.js:240)
at httpLink.ts:184