首页 > 解决方案 > Angular 7:为所有组件全局注入和使用服务

问题描述

我对 Angular 世界很陌生。我一直在使用 React 和 Vue JS,现在我需要使用 Angular 7。所以,我正在尝试理解/组织项目架构。

我在很多应用程序组件中使用以下服务导入,并且生成了很多重复的行:

// Services
import { TranslateService } from '@ngx-translate/core';
import { LoadingService } from '@services/loading/loading';
import { ErrorService } from '@services/error';


constructor(
    private translateService: TranslateService,
    private loading: LoadingService,
    private errorService: ErrorService,
) {}

有没有办法在全局范围内注入一些服务以在整个应用程序中使用以使组件的代码更干净?

谢谢,毛里西奥。

标签: angulartypescript

解决方案


一个常见的依赖注入模式是创建一个包含所有这些服务的公共服务,然后将该公共服务注入到您想要的所有服务中。这样,您只需在一项服务中维护这些常见的依赖项。

Angular 还使用@NgModule https://angular.io/api/core/NgModule提供模块级可注入


推荐阅读