繁体   English   中英

无法理解为什么我的Angular Dependency无法解决?

[英]Can't understand why my Angular Dependencies aren't resolving?

为什么我的模块不能用于$ injector服务? 控制台正在报告我的baseHellogeoHello服务的“未知提供程序”。 显然,我错过了一些基本知识,但是对于我而言,我看不到它!

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']);

您的工厂定义baseHello有未解决的依赖项(r)

/**Base Hello Service**/
angular.module("demo.services")
.factory("baseHello",function(r){
  return{
    'msg': 'Hello from ...'
  }
});

我认为的代码中有错字 您有一个名为rbaseHello服务的依赖项,该依赖项无法解析。 不必要,因为您似乎没有使用它,因此,如果将其取出,则代码将在您的Plunker中运行。

之前:

angular.module("demo.services")
.factory("baseHello",function(r){
  return{
    'msg': 'Hello from ...'
  }
});

后:

angular.module("demo.services")
.factory("baseHello",function(){
  return{
    'msg': 'Hello from ...'
  }
});

请参阅此处以了解可用的柱塞。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM