Я пытаюсь получить элемент mat-tab с его идентификатором, но по какой-то причине команда document.getElementById () возвращает значение null, а не элемент mat-tab. Пример:
https://stackblitz.com/edit/angular-mn5tt6
Может кто-нибудь сказать, почему это происходит, и есть ли лучший, правильный способ получения HTML-элемента?
Большое спасибо за помощь!
Мой ответ
Наилучшим способом, который я нашел для получения вкладки HTML-элемента, был следующий
HTML-файл:
<mat-tab-group #tabGroup>
<mat-tab label="First"> Content 1
<button (click)="printTab(tabGroup)">click me</button>
</mat-tab>
<mat-tab label="Second"> Content 2 </mat-tab>
<mat-tab label="Third"> Content 3 </mat-tab>
</mat-tab-group>
TS-файл:
export class TabGroupBasicExample {
@ViewChild('tabGroup') tabGroup;
printTab(tabGroup) {
console.log(this.tabGroup._tabs._results[0]);
}
}
Stackblitz:
https://stackblitz.com/edit/angular-mn5tt6-ahxi4j?file=app%2Ftab-group-basic-example.ts