多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# [Defining Providers in Shared Modules in Angular](https://alligator.io/angular/providers-shared-modules/) 目的:为了防止一个模块中通常应该作为是单例的服务,可能会被提供多次,特别是对于延迟加载的模块。 通过在模块的类中定义一个静态`forRoot`方法,该方法返回一个实现了`angular`的 `ModuleWithProviders` 接口的对象 示例代码: ```ts ... export class SharedModule { static forRoot(): ModuleWithProviders { return { ngModule: SharedModule, providers: [ SomeService ] }; } } ``` 最后,在任何功能模块中,我们可以简单地导入共享模块而不使用`forRoot`,我们将访问不需要在提供服务的共享管道和指令。