Показать страницу с ошибкой при ошибке загрузки шаблона ng-view

0

Я бы хотел показать стандартную страницу ошибки или шаблон, если шаблон нельзя загрузить с помощью ngRoute.

Я читал, что подписка на $routeChangeError может помочь, но не $routeChangeError куда идти отсюда.

$rootScope.$on("$routeChangeError", function (event, current, previous, rejection){
    // somehow tell the routing engine to load my error page (404 or 500 or something)
});

Кроме того, это можно сделать в глобальном масштабе, или это необходимо сделать для каждого контроллера. В настоящее время мой сайт не полностью SPA, у него есть "силосы" SPA/маршрутизации, так как я медленно конвертирую сайт из jQuery в Angular.

Теги:
ngroute

1 ответ

0
Лучший ответ

Вероятно, вы захотите перенаправить своего пользователя при ошибке. Как с помощью вашего кода:

$rootScope.$on("$routeChangeError", function (event, current, previous, rejection){
    $location.url('/error');
});

И затем в вашем $ routeProvider (возможно, $ stateProvider в зависимости от того, что вы используете), сделайте что-то вроде следующего

$routeProvider
    .when('/error', {
        templateUrl: 'error.html',
        controller: 'YourErrorController'
    })

Ещё вопросы

Сообщество Overcoder
Наверх
Меню