javascript - 如何将所需模块的服务注入(inject)模块配置函数?

标签 javascript angularjs

我有一个单独的服务模块,我需要将服务注入(inject)到依赖模块的配置函数中。

angular.module('app', ['app.services'], function(myservice) {/*use myservice*/})
  .controller('mycontroller', function($scope, myservice) {
    $scope.message = myservice.sayHello();
  });

angular.module('app.services', [], function($provide) {
  $provide.service('myservice', function() {
    return {sayHello: function() { return 'hello'; }};
  });
});

我还创建了一个 fiddle :http://jsfiddle.net/FzGmL/

代码将因 Unknown provider: myservice from app 而爆炸

如果从 app 模块配置函数中删除 myservice 参数,mycontroller 构造函数就可以拥有 myservice 注入(inject)就好了。

myservice如何注入(inject)到app模块的config函数中?

最佳答案

您正在寻找 Module.run() 方法,它会在注入(inject)器完成加载后为您完成初始化工作。

angular.module('myApp', ['app.services'])
   .run(function(myservice) {
      //stuff here.
   });

关于javascript - 如何将所需模块的服务注入(inject)模块配置函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12964660/

相关文章:

javascript - 为什么下划线的差异只能以一种方式起作用

javascript - mongodb 用变量更新数组

javascript - 如何为angular ui-select设置默认值

angularjs - 如何使用 md-autocomplete 向列表添加新值?

jquery - 使用 Angular 完成这项简单技术的最佳方法是什么?

javascript - 谷歌分析报告零秒 session

javascript - 解析另一个对象 Angular 中的字符串值

javascript - Angularjs $setViewValue 不影响 ngModel

angularjs - 如何使 angularjs ngChange 处理程序仅在用户完成输入时调用

javascript - 在 Angular 中使用 $q 实现,如何循环 promise 直到成功?