У меня есть действительно большой компонент, который работает со службой загрузки данных, и вместо того, чтобы переписывать аналогичный компонент для работы с новой службой, я написал службу со всеми теми же функциями, что и первый, и я пытаюсь динамически изменять внедрение службы в конструктор компонента с использованием ввода.
Итак, у меня будет:
@Input() isLocal= false;
private service: Service1|Service2;
constructor(private injector: Injector) {
if (this.isLocal) {
this.service = injector.get(Service1);
} else {
this.service = injector.get(Service2);
}
}
Моя проблема в том, что я не могу получить доступ к своему вводу в конструкторе и не могу запустить свою службу в ngOnInit. Как я могу этого добиться?