В этом примере , внутри обработчика отправки формы, запрос apollo обернут в блок try / catch:
async function handleSubmit(event) {
event.preventDefault()
const emailElement = event.currentTarget.elements.email
const passwordElement = event.currentTarget.elements.password
try {
await client.resetStore()
const { data } = await signIn({
variables: {
email: emailElement.value,
password: passwordElement.value,
},
})
if (data.signIn.user) {
await router.push('/')
}
} catch (error) {
setErrorMsg(getErrorMessage(error))
}
}
Есть ли более элегантный способ отловить сетевые ошибки, не используя try / поймать?
Или я должен просто проигнорировать ошибку консоли:
Uncaught (в обещании) Ошибка: Ошибка сети: Ответ не выполнен: Получен код состояния 400
А использовать ошибку проп?
const [login, { error }] = useMutation(LoginMutation)