2015-07-03 2 views
0

Я нашел способ обработки исключенных исключений в angularjs с помощью предопределенного $exceptionHandler службы. Согласно документу, я делегирую исключения вручную, используя try {...} - catch(e). Ниже

try { 
    $scope.loadImage(); 
}catch (e){ 
    console.log(e); 
} 

Он работает абсолютно нормально Но хотелось бы знать , как я мог справиться неперехваченные исключения в угловом образом? Кто-нибудь может поделиться рабочим примером?

+0

«Я нашел способ справиться с неперехваченными исключениями» ... «Как я мог обрабатывать исключенные исключения» - ??? – zeroflagL

+0

Не могли бы вы уточнить сэр? – Vineet

+0

Вы писали, что нашли решение, но затем попросите решение. Это противоречие. – zeroflagL

ответ

0

Обьясняется in the API.

angular.module('exceptionOverride', []).factory('$exceptionHandler', function() { 
    return function(exception, cause) { 
    exception.message += ' (caused by "' + cause + '")'; 
    throw exception; 
    }; 
}); 

Этот пример переопределить нормальное действие $exceptionHandler, чтобы сделать угловые исключения терпеть неудачу трудно, когда они случаются, вместо того, чтобы просто войти в консоль.

Обратите внимание, что код выполняется в ивент-слушателей (даже тех, кто зарегистрирован использованием jqLite по методам/связывания) не передает исключения из $exceptionHandler (если не исполняется во дайджеста). Если вы хотите, , вы можете вручную делегировать исключения, например. try { ... } catch(e) { $exceptionHandler(e); }

+0

Как бы справиться с неперехваченными исключениями? – zeroflagL

Смежные вопросы