我间歇性地收到此错误:
错误:[$ injector:unpr]未知提供程序:undefinedProvider http://errors.angularjs.org/1.2.16/ $ injector / unpr?p0 = undefinedProvider%20%3C-%20
最多可以重复10次。
似乎是在第一次将页面加载到浏览器中时发生的。通常,当我刷新页面时,消息不会出现。
这不是一个新的应用程序。它已经工作了一段时间,但我进行了更改。症状间歇性出现的事实使得很难隔离导致它的变化。
使我感到困惑的是undefinedProvider
。任何有关如何找到提供商名称的建议都将受到欢迎!
我正在使用AngularJS 1.2.16的最小版本。
我已经完成了诸如使用数组语法这样的常规操作。
我知道这没什么大不了的,但是我想我会先检查是否有人经历过类似的事情,然后再将代码缩减为小插曲。
我最近刚添加的一件事是通过节点服务器的ejs变量传入一些配置数据(如ng-conf上Google关于“ Massive Apps”的演讲所建议)。它工作正常,但我想知道是否存在一些计时问题。这是一个片段:
.config(['$provide', function ($provide) {
var profile = angular.copy(window.activeProfile);
$provide.constant('Config', profile.config);
console.log("Config:", profile.config);
}])
.run(['$rootScope', '$state', '$window', 'Config', function ($rootScope, $state, $window, Config) {
配置记录如我所料。
最佳答案
这似乎是ngAnimate 1.2.16和更高版本中的错误(或与AngularStrap不兼容?)。在较早的版本上,我的应用程序可以运行,而较新的版本则可以:
Error: [$injector:unpr] Unknown provider: undefinedProvider <-
http://errors.angularjs.org/1.3.0-beta.5/$injector/unpr?p0=undefinedProvider%20%3C-%20
at http://code.angularjs.org/1.3.0-beta.5/angular.js:78:12
at http://code.angularjs.org/1.3.0-beta.5/angular.js:3709:19
at Object.getService [as get] (http://code.angularjs.org/1.3.0-beta.5/angular.js:3836:39)
at http://code.angularjs.org/1.3.0-beta.5/angular.js:3714:45
at Object.getService [as get] (http://code.angularjs.org/1.3.0-beta.5/angular.js:3836:39)
at lookup (http://code.angularjs.org/1.3.0-beta.5/angular-animate.js:409:36)
at animationRunner (http://code.angularjs.org/1.3.0-beta.5/angular-animate.js:458:17)
at performAnimation (http://code.angularjs.org/1.3.0-beta.5/angular-animate.js:862:22)
at http://code.angularjs.org/1.3.0-beta.5/angular-animate.js:623:13
at Scope.$digest (http://code.angularjs.org/1.3.0-beta.5/angular.js:12308:36)
我不是直接通过AngularStrap和Toaster指令直接使用ngAnimate。
我的解决方案是恢复到Angular和angular-animate版本1.2.15。