angular - 如何在没有构造函数注入的情况下获取 elementRef?- 角
问题描述
我想知道是否有办法在ElementRef
没有构造函数注入的情况下获取实例Angular
?
为什么我需要它:
我有一个抽象的 BaseComponent 类,它被许多其他 Angular 组件类继承。我想避免ElementRef
通过调用注入所有子类super(elementRef)
,而是将其直接注入 BaseComponent 类 -
export abstract class BaseComponent {
private elementRef: ElementRef;
constructor() {
// Do we have some option like below?
// this.elementRef = Injector.get(ElementRef)
}
}
@Component({
selector: 'app-comp-one',
templateUrl: './comp-one.component.html',
styleUrls: ['./comp-one.component.css']
})
export class CompOne extends BaseComponent {
constructor() { // constructor(elementRef: ElementRef)
super(); // super(elementRef);
// here I can pass elementRef in super constructor call
// but that's what I don't want to do
}
}
解决方案
我没有测试它,但我发现你的问题很有趣,所以我做了一些研究,我发现这可以解决你想要解决的确切问题。
推荐阅读
- scala - 具有类型成员的案例类的类型推断问题
- javascript - 是否可以使用 javascript SDK 从亚马逊 Dynamodb 查询 JSON 数据
- vim - 全部格式化保存 Coc-Prettier
- angular - 根据 *ngFor / *ngIf 中的值添加标题
- fiware - Fiware Scorpio Broker 和 Orion Broker 的区别
- python - 如何将函数应用于依赖于多个列的 groupby 子组?
- join - 在flink中如何设置Joinstream的设置并行度
- angular - 如何从特定捆绑文件名中删除哈希,在 Angular 10 中创建产品构建
- php - 保存对变量的响应
- python - AttributeError:只能使用带有字符串值的 .str 访问器