Сейчас на каждый запрос идет примерно такая борода:
axios.get('/path/').then(res => {
switch (res.status) {
case 200:
// success actions
break;
case 400:
// wrong input
alert(res.data || 'Ошибка!');
case 401:
// sometimes?
this.logged = false;
break;
case 404:
// sometimes?
alert(res.data || 'Неизвестный id');
this.$router.push('/redirect_path/');
break;
default:
// any other 4хх?
alert(`Неизвестная ошибка ${res.status} ${res.statusText}`);
break;
}
return Promise.resolve();
}).catch(error => {
// 500
alert(`Неизвестная ошибка ${error.response.status} ${error.response.statusText}`);
return Promise.resolve();
}).then(() => {
// final actions
this.loading = false;
})
Как нынче принято устранять подобные вещи?