我们说我有一个基本组件 -
export class BaseComponent {
public constructor(public myService: MyService) {
}
}
衍生组件 -
export class DerivedComponent extends BaseComponent {
public constructor(public myService: MyService) {
super(myService);
}
}
但我只需要在BaseComponent中使用myService依赖项。有没有办法避免必须将额外的构造函数添加到DerivedComponent?
从DerivedComponent中删除依赖项似乎导致它没有被注入。
答案 0 :(得分:3)
已经有类似的问题需要广泛讨论。
答案基本上是 - 不,你不能。
没找到其他人。
答案 1 :(得分:1)
您无法从DerivedComponent类中删除构造函数。但是使用您的代码,您有两个名为' myService'在DerivedComponent类中。您可以简化构造函数:
export class DerivedComponent {
public constructor(myService: MyService) {
super(myService);
}
}