Привет. Я пытаюсь создать свою первую библиотеку, используя новые функции angular / CLI, и я немного запутался в том, как я должен предоставлять услуги.В моей библиотеке есть 2 службы, которые я хочу показать, скажем:
service1 и service2
и два помощника (службы с угловой точки зрения), которые я хочу оставить внутреннимискажем в библиотеку:
helper1 и helper2
все помощники и службы могут быть настроены с помощью globalOption в static forRoot()
* 1015У меня два вопроса:
- Я должен объявить все службы и помощника в массиве
providers
модуля, например:
@NgModule({
imports: [CommonModule],
declarations: [],
exports: [],
})
export class MyModule {
static forRoot(options: Options = {}): ModuleWithProviders {
return {
ngModule: MyModule,
providers: [
Service1,
Service2,
HelperService1,
HelperService2,
{
provide: OPTIONS,
useValue: options,
},
{
provide: 'options',
useFactory: optionsFactory,
deps: [OPTIONS],
},
],
};
}
}
Должен ли я хранить
@Injectable({ providedIn: 'root' })
во всех помощниках и службах?Как мне скрыть помощников?