一尘不染

来自不同模块的AngularJS访问服务

angularjs

'use strict';

var trkiApp = angular.module('trkiApp', [ 
  'trkiApp.tStatus', 
  'trkiApp.feed'
]);



var tStatus = angular.module('trkiApp.tStatus', [])
    .factory('Status', ['$q']);

var feed = angular.module('trkiApp.feed', []);

现在我不明白如何访问另一个模块上定义的服务状态?

'use strict';

feed
    .controller('FeedController', ['$scope','$http','Status']);

我不应该对吗?但是我不知何故…或者这是正确的行为吗?


阅读 182

收藏
2020-07-04

共1个答案

一尘不染

模块在配置和运行块的集合,其获得在引导过程中施加到该应用程序。模块可以列出其他模块作为它们的依存关系。根据模块上意味着
需要 将之前加载模块的需求 ,需要 加载的模块。

var myModule = angular.module('myModule', ['module1','module2']);

注入模块时,服务会在配置阶段进行注册,并且可以访问它们,因此总而言之,这是Angular中正确行为和依赖注入的核心基础。例如

angular.module('module1').service('appservice', function(appservice) {
   var serviceCall = $http.post('api/getUser()',"Role");
});

那么如何使用 angular.module('myModule');

angular.module('myModule').controller('appservice', function(appservice)
{
    var Servicedata= appservice.ServiceCall('role');
}

这是如何访问它。如果有人有其他建议,请这样说。

2020-07-04