Я использую https://www.npmjs.com/package/vue-error-page для отображения страниц с ошибками, таких как 404 или 500.
Теперь у меня возникла одна проблема: после вызова маршрута 404, beforeRouteEnter
и beforeRouteUpdate` методы больше не вызываются, если я использую vue -рутер для доступа к странице, которая не выбрасывает 404.
Пример:
https://example.org/product/not-existing-product вызывает Product.vue
, который выполняет API-вызов и использует перехватчик ax ios, чтобы бросить 404:
// Add response interceptor
window.axios.interceptors.response.use (function (response) {
return response;
}, function (error) {
if (404 === error.response.status) {
main.$_error (NotFound);
} else if (500 === error.response.status) {
main.$_error (Internal);
} else {
return Promise.reject (error);
}
return Promise.reject (error);
});
Теперь, если я использую навигационное меню для посещения https://example.org/product/existing-product отображается пустой компонент, потому что методы beforeRouteEnter
или beforeRouteUpdate
больше не вызываются. Смонтированный метод компонента снова вызывается .
Итак, мои вопросы:
- Как заставить мой компонент перезагрузить вызов API здесь ?
- Должен ли я как-то здесь "сбросить" vue -рутер?