爲什麼我的模塊不適用於$ injector服務?控制檯正在爲我的baseHello
和geoHello
服務報告「未知提供商」。顯然我錯過了一些基本的東西,但是對於我的生活,我看不到它!不明白爲什麼我的Angular Dependencies不能解決?
http://plnkr.co/edit/3Y0WeIH1dCkWKMhRJKnM?p=preview
/**Modules, we flesh these out below**/
angular.module('demo.services',[]);
angular.module('demo.directives',['demo.services']);
angular.module('demo',['demo.services','demo.directives']);
/**Application Module, Dependency on geoHello Service**/
angular.module('demo')
.controller('myCtrl',['$scope', 'geoHello',function($scope,geoHello){
$scope.test = geoHello.msg
}]);
/**Base Hello Service**/
angular.module("demo.services")
.factory("baseHello",function(r){
return{
'msg': 'Hello from ...'
}
});
/**Service With Dependency on baseHello**/
angular.module("demo.services")
.factory("geoHello",['baseHello',function(baseHello){
var msg = baseHello.msg.replace("...","world");
return{
'msg': msg
}
}]);
/**Directive With Dependency on geoHello**/
angular.module("demo.directives")
.directive('ngDemo',['geoHello',function(geoHello){
return{
'template': geoHello.msg
}
}]);
angular.bootstrap(document,['demo']);
通常,當您使用非最小化版本的angularjs進行調試時,它會有所幫助。您可能會很快發現下面建議的對'r'的依賴關係。 – 2014-10-06 16:45:23
回想起我的控制檯原來的錯誤表明了'r'的依賴關係,我的眼睛一直關注錯誤信息中指定鏈中的其他兩個依賴項。整個時間都在我面前! – mccainz 2014-10-06 16:54:04