大家好,我是 Angular JS 的新手。我有一个模块“ngApp”,它依赖于模块“ng-main”。我想处理“ng-main”模块的配置 block 中可能引发的错误和异常。我创建了一个新模块“ng-error”,并使“ngApp”依赖于该模块来处理错误和异常,但它有点无法捕获它。
index.html
<script type="text/javascript">
angular.module('ngApp', ['ng-error', 'ng-main']);
</script>
ngErrors.js
angular.module('ng-error',[])
.config(function($provide) {
$provide.factory('$exceptionHandler', function($injector) {
return function (exception, cause) {
console.log(exception);
// display error message
};
});
});
ngMain.js
angular.module('ng-main', ['ng-test'])
.config(function(){
// code with error
});
如果此配置 block 中发生任何错误,它会完全失败,但我想手动处理这些错误。对我的代码有什么想法或评论吗?
最佳答案
好的,尝试了下面的代码并成功了。手动重写 Angular 引导进程并将该代码包装在 try{} catch {} block 中以处理配置 block 中的错误
像这样:
<script type="text/javascript">
angular.module('ngApp', ['ng-error', 'ng-main']);
angular.element(document).ready(function() {
try {
angular.bootstrap(document, ['ngApp']);
} catch(e) {
//handle errors
}
});
</script>
关于javascript - 如何处理 AngularJS 配置 block 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28943804/