最小化httpInterceptor AngularJS$注入器错误
Minifying httpInterceptor AngularJS $injector error
当我缩小/模糊处理/uglify代码时,我的httpInterceptor
不再工作。
我得到以下错误:
Error: error:unpr
Unknown Provider
Unknown provider: aProvider <- a
我的代码删除了所有不相关的东西:
angular.module("MyApp").factory('sessionChecker', ['$q', '$injector',
function ($q, $injector) {
var sessionRecoverer = {
responseError: function (response) {
// Session has expired
if (response.status === 401) {
var $location = $injector.get('$location');
var $modal = $injector.get('$modal');
$location.path("/login");
} else if (response.status === 500) {
var $location = $injector.get('$location');
//Do stuff..
} else if (response.status === 0) {
var $modal = $injector.get('$modal');
//Do stuff..
}
return $q.reject(response);
}
};
return sessionRecoverer;
}]);
angular.module("MyApp").config(['$httpProvider',
function ($httpProvider) {
$httpProvider.interceptors.push('sessionChecker');
}]);
我该如何正确地注入我的依赖项,或者我遗漏了什么?这在没有缩小我的代码的情况下工作得很好。
如有任何帮助,我们将不胜感激。
你确定是这段代码产生了错误吗?(这个代码在我看来还可以…)但这个错误肯定是由于没有使用['dep1', dep2', function(dep1,dep2){...}]
语法(或与$inject
等效的语法)造成的。
您可以尝试严格的DI模式,这样Angular将在非缩小模式下报告错误(参考此处):
<div ng-app="myApp" ng-strict-di>
或者(如果手动引导):
angular.bootstrap(document, ['myApp'], {
strictDi: true
});
相关文章:
- JavaScript类列表选择器错误
- 他们网站上的代码出现启动日期选择器错误
- jQuery选择器错误:无法识别的表达式
- 视频播放器错误promise DOMException中未捕获
- requirejs优化器错误:未定义窗口
- Jquery 日期时间选取器错误
- Angular2 - 动态组件加载器错误
- 在出厂时注入服务错误: [$injector:unpr] 未知提供程序: $scopeProvider <- $scop
- AngularJS 服务注入器错误
- 角喷油器错误
- Sequelize.js中获取验证器错误
- 最小化httpInterceptor AngularJS$注入器错误
- AngularJS:骨架应用程序上的注入器模块rr错误
- 如何修复角度缩小生成后的注入器错误
- AngularJs注入器模块错误
- 角注入器错误帮助>
- Angular注入器自调用函数语法错误
- 使用Jhipster的Angular JS中的注入器错误
- "$注入器:模块rr”:模块名称的抛出错误不可用,但实际上它是可用的
- 如何在我的应用中包含和使用ui-router而不会出现注入器错误