Как загрузить службу через SharedModule в качестве одноэлементного набора в ленивом загруженном модуле ngModule?Как загрузить службу через shared.module в ленивом загруженном модуле ngModule, созданный только один раз, хотя forRoot()
Как я могу загрузить службу в качестве одноэлементного устройства в ленивом загруженном модуле ngModule?
У меня есть SharedModule, который предоставляет несколько сервисов, таких как i18n и API. Услуги - это собственные ngModules, которые предоставляют свои функции forRoot. Теперь я хотел бы загрузить Сервисы из SharedModule в круговой загруженный модуль с помощью forRoot, чтобы новый экземпляр не был создан путем инъекции зависимостей.
Я пытался что-то вроде следующего, но ничего не похоже на работу
shared.module.ts
import {I18nModule} from "./i18n/i18n.module";
import {ApiModule} from "./api/api.module";
@NgModule({
exports: [
I18nModule,
ApiModule
]
}
export class SharedModule {
static forRoot():ModuleWithProviders {{
return {
ngModule: SharedModule,
providers: [ ... I18nModule.forRoot().providers, ... ApiModule.forRoot().providers ]
};
}
}
app.module.ts
@NgModule({
declarations: [AppComponent],
imports: [
BrowserModule,
routing,
SharedModule.forRoot(),
],
providers: [
],
bootstrap: [AppComponent]
})
export class AppModule {
}
Гур ресурсов, чтобы попасть в модули и forRoot/для детей http://blog.angular-university.io/angular2-ngmodule/