Я создаю внутреннюю библиотеку для наших проектов, используя Angular 6+.Я использую подход .forRoot()
для регистрации глобальных сервисов, как описано в документации.
Моя библиотека будет использовать ngx-toastr
для предоставления уведомлений.Поскольку я не хочу, чтобы каждый проект имел дело непосредственно со всеми опциями ngx-toastr
, я абстрагирую большую часть его от службы notifications
.
Способ работы ngx-toastr
, вы можете установить глобальныйопций, передав эти глобальные опции в ToastrModule.forRoot()
.
как я могу настроить ToastrModule
как часть моего собственного forRoot()
?
Это явно плохая идеядобавить какой-либо код внутри .forRoot()
, но правильный ли это способ инициализировать его прямо в моем @NgModule()
?как это:
@NgModule({
imports: [ToastrModule.forRoot(/* options go here? */)],
declarations: [],
exports: []
})
export class ToolsCoreModule {
static forRoot(): ModuleWithProviders {
return {
ngModule: ToolsCoreModule,
providers: [],
};
}
}
Как это будет взаимодействовать, если кто-то в команде решит также вызвать ToastrModule.forRoot()
в рамках инициализации своего модуля?