Angular2:将所有服务分离到一个模块

时间:2017-01-12 14:01:37

标签: angular angular2-services angular2-modules

我有自己的应用程序,用Angular2编写,由几个模块组成。为了保持代码顺序,我发现我应该将所有服务(用于与API通信)隔离到单独的模块。

我想知道这是不是一个好主意?它会对我的应用程序的加载时间或大小产生影响吗?这可能是其他负面影响吗?如果是这样,为什么?什么是在模块上划分应用程序的最佳实践。

感谢。

2 个答案:

答案 0 :(得分:4)

您的服务应存储在使用它们的同一模块中。

如果在多个模块中重复使用它,您可能希望将它们放在主组件中,通常也会存储它的模型。

答案 1 :(得分:1)

将服务存储在相同的模块中是一种很好的做法,但有时候,有些服务由不同的模块使用,因此CoreModule是存储它们的最佳方式。

来自angular 2样式指南,STYLE 04-11

  

请放置一个单例服务,其实例将在CoreModule中的整个应用程序中共享(例如ExceptionService和LoggerService)。

在所有建议之后,有一个树形视图和角色应用程序的示例,其中实现了CoreModule(存储服务)。