Когда @Injectable
предоставляется на уровне компонента, он создается каждый раз при создании компонента.
Самый простой способ добиться того, чего вы хотите, это предоставить FormService
в * 1005. * вместо Component
. Однако, если вам нужно FormService
для каждой группы, вам нужно создать контейнерный компонент, чтобы обеспечить уровень FormService
dom над этим компонентом.
Чтобы создать один FormService
дляДля всего приложения сделайте так, чтобы ваш app.module.ts
файл выглядел следующим образом (обратите внимание, что здесь используется многоточие для указания другого кода):
@NgModule({
imports: [BrowserModule, ...],
declarations: [AppComponent, ...],
providers: [FormService, ...],
bootstrap: [AppComponent]
})
export class AppModule {}
Конечно, вы также можете предоставлять FormService на уровне Feature Module ... но мы оставим это здесь простым.
Документация описывает, как инжектор зависимостей «находит» сервис более четко здесь: https://angular.io/guide/architecture-services