Когда я использую selectedTabChange, вы можете получить индекс выбранной вкладки.Есть ли способ получить ссылку на компонент вкладки для использования его методов?
Я делаю динамическую панель вкладок, чтобы каждая вкладка внутри нее содержала информацию для загрузки сама, поэтому, когда я хочу загрузить ее, мне просто нужноиспользовать один метод там.Теперь я хочу вызвать этот метод из прослушивателя tabpanel selectedTabChange.Когда вы используете этот слушатель, вы можете получить индекс выбранной вкладки, но я не нашел способа получить ссылку на его компонент, который позволил бы мне использовать его методы.
Tabpanel (HTML):
<mat-tab-group (selectedTabChange)="onClickPestanya($event)">
<mat-tab
*ngFor="let subfase of subfases;"
label="{{ subfase.tabTitle }}">
<app-panel-subfase
style="display: flex; flex-grow: 1"
*ngIf="someId"
[(someCode)]="subfase.code">
</app-panel-subfase>
</mat-tab>
</mat-tab-group>
Tabpanel (Typescript):
onClickPestanya(event: MatTabChangeEvent): void {
const me = this;
me.activeTab = event.index;
//There I should get tab component reference
}
Tab (Typescript):
cargarTab(): void {
//loading tab info
}
Я хочу загружать вкладки каждый раз, когда выбираю их на вкладке.Ранее я делал нечто похожее на это, но со статической панелью вкладок, где я могу использовать методы дочерних компонентов с директивой @ViewChild, но это не вариант для динамической панели.Другой вариант - создавать и уничтожать панель каждый раз, когда выбранная панель изменяется, чтобы загрузить ее после ее создания, но у меня тоже нет знаний для этого.