Angular 使用全球服务而不是体面服务
Angular Use Global Service instead of decencies service
如何在应用程序和依赖项之间共享服务?
这里有一些伪代码,但应该能说明问题。
module A imports service C (package says it is a dependency so it install it)
app Module B imports service C (to configure it)
我有如下临时修复程序,但不喜欢它,因为多个依赖项可能会实现服务 c。
import {CService as OldCService} from 'c/node_modules/c';
import {CService} from 'c';
@NgModule({
declarations: [ ... ],
imports: [ ... ],
providers: [
{provide: OldCService, useClass: CService}
],
bootstrap: [AppComponent]
})
export class AppModule {
}
我能看到的唯一其他选项是使服务 C 成为可选的(成为对等依赖项)...但是我们在使用 forroot 设置时遇到了可选问题,它将在外部进行配置。
我相信这个观点描述了我当时想要的:
https://www.youtube.com/watch?v=SBSnsNHQYo4
如何在应用程序和依赖项之间共享服务?
这里有一些伪代码,但应该能说明问题。
module A imports service C (package says it is a dependency so it install it)
app Module B imports service C (to configure it)
我有如下临时修复程序,但不喜欢它,因为多个依赖项可能会实现服务 c。
import {CService as OldCService} from 'c/node_modules/c';
import {CService} from 'c';
@NgModule({
declarations: [ ... ],
imports: [ ... ],
providers: [
{provide: OldCService, useClass: CService}
],
bootstrap: [AppComponent]
})
export class AppModule {
}
我能看到的唯一其他选项是使服务 C 成为可选的(成为对等依赖项)...但是我们在使用 forroot 设置时遇到了可选问题,它将在外部进行配置。
我相信这个观点描述了我当时想要的: https://www.youtube.com/watch?v=SBSnsNHQYo4