出现奇怪的注入器错误 - 未知提供者:bProvider <- b
Getting a strange injector error - Unknown provider: bProvider <- b
编译我的代码后,我遇到了一个我无法识别的奇怪错误。通常在出现 $injector 错误时,我会得到一个特定的模块描述,例如 $uibModal 或 $resource 等
有了这个我就得到了这个 bProvider <- b.
有谁知道我如何解决这个问题,或者谁能告诉我这是指什么?
我正在使用 grunt 编译和使用 uglify...
vendor.56b5173c.js:5 Error: [$injector:unpr] Unknown provider: bProvider <- b
http://errors.angularjs.org/1.5.8/$injector/unpr?p0=bProvider%20%3C-%20b
at vendor.56b5173c.js:3
at vendor.56b5173c.js:4
at Object.d [as get] (vendor.56b5173c.js:4)
at vendor.56b5173c.js:4
at d (vendor.56b5173c.js:4)
at e (vendor.56b5173c.js:4)
at Object.g [as invoke] (vendor.56b5173c.js:4)
at j.instance (vendor.56b5173c.js:5)
at ui-bootstrap-tpls.min.js:8
at g (vendor.56b5173c.js:5)
这是我的模态函数的样子:
var modalInstance = $uibModal.open({
animation: true,
backdrop: 'static',
keyboard: false,
templateUrl: 'questionsModal.html',
controller: function($scope, $uibModalInstance, SweetAlert) {
$scope.close = function() {
//self.showingExpenses = false;
$uibModalInstance.close();
videoId.play();
};
}
});
缩小js文件时出现错误:
缩小期间发生的事情是 另一个服务参数被缩小为 'b'(或其他东西)。
Angular 会尝试寻找 'b' 服务,当失败时它会尝试寻找 'bProvider' 来提供服务。
由于这些都没有声明,您将收到 "Unknown provider" 错误。
要解决此问题,您应该将所有依赖项更改为字符串:
应该避免这种语法:
angular('myModule').service('myService', function(anotherService) {
// ...
});
应遵循:
angular('myModule').service('myService', ['anotherService', function(anotherService) {
// ...
}]);
这样当缩小完成时,它不会弄乱依赖注入。
这适用于任何声明,而不仅仅是服务。
编译我的代码后,我遇到了一个我无法识别的奇怪错误。通常在出现 $injector 错误时,我会得到一个特定的模块描述,例如 $uibModal 或 $resource 等
有了这个我就得到了这个 bProvider <- b.
有谁知道我如何解决这个问题,或者谁能告诉我这是指什么?
我正在使用 grunt 编译和使用 uglify...
vendor.56b5173c.js:5 Error: [$injector:unpr] Unknown provider: bProvider <- b
http://errors.angularjs.org/1.5.8/$injector/unpr?p0=bProvider%20%3C-%20b
at vendor.56b5173c.js:3
at vendor.56b5173c.js:4
at Object.d [as get] (vendor.56b5173c.js:4)
at vendor.56b5173c.js:4
at d (vendor.56b5173c.js:4)
at e (vendor.56b5173c.js:4)
at Object.g [as invoke] (vendor.56b5173c.js:4)
at j.instance (vendor.56b5173c.js:5)
at ui-bootstrap-tpls.min.js:8
at g (vendor.56b5173c.js:5)
这是我的模态函数的样子:
var modalInstance = $uibModal.open({
animation: true,
backdrop: 'static',
keyboard: false,
templateUrl: 'questionsModal.html',
controller: function($scope, $uibModalInstance, SweetAlert) {
$scope.close = function() {
//self.showingExpenses = false;
$uibModalInstance.close();
videoId.play();
};
}
});
缩小js文件时出现错误:
缩小期间发生的事情是 另一个服务参数被缩小为 'b'(或其他东西)。
Angular 会尝试寻找 'b' 服务,当失败时它会尝试寻找 'bProvider' 来提供服务。
由于这些都没有声明,您将收到 "Unknown provider" 错误。
要解决此问题,您应该将所有依赖项更改为字符串:
应该避免这种语法:
angular('myModule').service('myService', function(anotherService) {
// ...
});
应遵循:
angular('myModule').service('myService', ['anotherService', function(anotherService) {
// ...
}]);
这样当缩小完成时,它不会弄乱依赖注入。
这适用于任何声明,而不仅仅是服务。