如何为2个模块注入服务

时间:2016-05-06 09:20:15

标签: angularjs

我有一个包含2个单独模块的项目,.module('app').module('secondApp')。在.module('app')我有现场验证服务。现在我需要为第二个模块添加此服务。我可以为2个模块注入1个服务,还是需要将此服务复制到另一个模块?

1 个答案:

答案 0 :(得分:3)

创建一个模块'MyServiceModule'。

在此模块中,添加服务。

在您编写的2个模块中,在需求中添加“MyServiceModule”,如下所示:

angular.module('myapp', ['MyServiceModule']);

完整示例:

angular.module('MyServiceModule', []).service(...);
angular.module('app1', ['MyServiceModule']);
angular.module('app2', ['MyServiceModule']);

在app1和app2中,您可以访问MyServiceModule的任何服务指令。

通过这样做,您可以在项目的任何其他项目中共享服务,甚至为您的服务创建一个bower / npm包。