来自 angularjs 1.x 的 John Papa 风格指南。我看到下面的 ecxeption 捕手实现。但是没有使用示例。有人可以提供一些示例如何在控制器、工厂或服务方法中使用它吗?
异常捕捉器 [样式 Y111]
创建一个工厂,该工厂公开一个接口以捕获并优雅地处理异常。
为什么?:提供一种一致的方式来捕获可能在您的代码中抛出的异常(例如,在 XHR 调用或承诺失败期间)。
/* recommended */
angular
.module('blocks.exception')
.factory('exception', exception);
exception.$inject = ['logger'];
function exception(logger) {
var service = {
catcher: catcher
};
return service;
function catcher(message) {
return function(reason) {
logger.error(message, reason);
};
}
}