我有一个称为父组件的组件,并且有子组件1和子组件2。两个子组件都扩展了父组件。 我向子组件1注入了服务A和服务B 我将服务C和服务D注入到子component2。 这些子组件是延迟加载的组件。
现在,我需要根据需要从父组件获得这些服务。 如何从父组件获取服务列表,无论在该层次结构下注入了什么,我都应该在该子组件注入器下获取所有服务。
请让我知道获取这些服务的方法。
答案 0 :(得分:0)
我认为您可以在
this
上添加服务,因为父母和孩子 共享相同的this
对象,您可以在父级中访问子级服务。
class Parent {
someMethod() {
this.serviceList // there you will get all the dependencies of the Child.
}
}
class Child extends Parent {
serviceList: Array<any> = []
constructor(inj Injector) {
this.serviceList.push ( inj.get(<Dependency1>) );
this.serviceList.push ( inj.get(<Dependency2>) );
}
}