跨文件拆分AngularJS模块服务

时间:2014-08-15 12:04:46

标签: javascript angularjs

我有两个AngularJS服务:

service1.js

'use strict';
angular.module('myModule', [])
  .factory('myService1', function() {
    return {
      myFunction: function(options) {
        if (options) {
          // do stuff
      }
    }
  };
});

service2.js

'use strict';
angular.module('myModule', [])
  .factory('myService2', function() {
    return {
      myFunction: function(options) {
        if (options) {
          // do stuff
      }
    }
  };
});

我从official docs学到了很难的方法,这种方法基本上会删除myService1,因为模块会被覆盖。我的问题是,我有什么选择吗?我真的希望能够在单独的文件中定义我的服务。然而,我只想要一个模块。

感谢您的任何见解。

1 个答案:

答案 0 :(得分:0)

您只需要定义一次模块:

angular.module('myModule', []);

然后根据需要多次使用它而不设置依赖项:

angular.module('myModule');

因此,要么您在单独的文件中定义模块,要么在第一个服务中定义它,第二个应该如下所示:

angular.module('myModule')
  .factory('myService2', function() { ... });
相关问题