網站搜尋

typescript - 如何獲取主機元素引用?


我如何在 Angular 2 中獲取宿主元素的引用?

就我而言,我想知道我的組件是否有焦點。

答案#1

你使用以下方式獲取主機元素引用

class MyComponent {
  constructor(private elRef:ElementRef) {
    console.log(this.elRef.nativeElement);
  }
}

你也可以訂閱 focus 事件

class MyComponent {
  @HostBinding() tabindex = 0;
  @HostListener('focus', ['$event'])
  onFocus(event) {
    console.log(event);
  }
}

答案#2

使用 ViewContainerRef,它表示一個容器,可以將一個或多個視圖附加到組件上。

constructor(private readonly viewRef: ViewContainerRef) {

    console.log(this.viewRef.element.nativeElement);
}