我有一个非常大的组件,它与用于加载数据的服务一起使用,而不是重新编写用于处理新服务的类似组件,我编写了一个与第一个具有所有相同功能的服务,我尝试动态更改使用输入在组件的构造函数中注入服务。
所以我会有:
@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 中初始化我的服务。我怎样才能做到这一点?