J'ai une action qui fait un POST
au serveur afin de mettre à jour le mot de passe d'un utilisateur, mais je ne parviens pas à gérer l'erreur dans le bloc catch enchaîné.
return axios({
method: 'post',
data: {
password: currentPassword,
new_password: newPassword
},
url: `path/to/endpoint`
})
.then(response => {
dispatch(PasswordUpdateSuccess(response))
})
.catch(error => {
console.log('ERROR', error)
switch (error.type) {
case 'password_invalid':
dispatch(PasswordUpdateFailure('Incorrect current password'))
break
case 'invalid_attributes':
dispatch(PasswordUpdateFailure('Fields must not be blank'))
break
}
})
Lorsque je consigne l'erreur, voici ce que je vois :
Lorsque je vérifie l'onglet réseau, je peux voir le corps de la réponse, mais pour une raison quelconque, je ne peux pas accéder aux valeurs !
Ai-je commis une erreur sans le savoir ? Parce que je gère bien d'autres erreurs provenant de requêtes différentes, mais je n'arrive pas à résoudre celle-ci.