web-dev-qa-db-ja.com

Angular Material 5:タブが選択(クリック)されたときに関数を呼び出す方法は?

次のHTMLコードがあります

<mat-tab label="Regular" (selectChange)="tabClick()"
                 (click)="tabClick()">
   <h1>Some more tab content</h1>
</mat-tab>

これが機能です

tabClick(){
    console.log('Tab clicked...');
}

しかし、呼び出されていないようです、なぜですか?上記のイベントのいずれも発生しませんか?

10
1Z10

selectedTabChangedイベントを<mat-tab-group>要素に添付する必要があります

<mat-tab-group (selectedTabChange)="tabClick($event)">
  <mat-tab label="Tab 1">Content 1</mat-tab>
  <mat-tab label="Tab 2">Content 2</mat-tab>
</mat-tab-group>

tabClick(tab) {
  console.log(tab);
}

デモ

18
bugs

イベントはselectedTabChangeからmat-tab-group

<mat-tab-group (selectedTabChange)="tabClick()">
    <mat-tab label="Regular">
       <h1>Some more tab content</h1>
    </mat-tab>
</mat-tab-group>
4
Pardeep Jain