2017-08-09 1 views

Antwort

4

Vorlage html:

<md-tab-group (selectChange)='onSelectChange($event)'> 
    <md-tab label="Tab 1">Content 1</md-tab> 
    <md-tab label="Tab 2">Content 2</md-tab> 
</md-tab-group> 

component.ts

import {Component} from '@angular/core'; 


@Component({ 
    selector: 'tabs-overview-example', 
    templateUrl: 'tabs-overview-example.html', 
}) 
export class TabsOverviewExample { 
    onSelectChange(event) { 
    if(event.index== 0){ 
     console.log('Tab1 is selected!'); 
    }else{ 
     console.log('Tab1 is not selected!') 
    } 
    } 
} 
+0

funktioniert nicht –

+0

was läuft schief? –

+0

Nichts wird in der Konsole angezeigt –

2

Sie müssen die selectChange Ereignis verwenden:

<md-tab-group (selectChange)="onTabSelectChange($event)"> 
    <md-tab label="Tab 1">Content 1</md-tab> 
    <md-tab label="Tab 2">Content 2</md-tab> 
</md-tab-group> 

Und in Ihrem Bauteil:

onTabSelectChange(tabChange: MdTabChangeEvent) { 
// do whatever you need to do here 
} 

Sie können die Dokumentation für Material Tabs für weitere Details über MdTabChangeEvent

+0

, wie MdTabChangeEvent bitte importieren? –

+0

'importieren Sie {MdTabChangeEvent} aus '@ angular/material';' –

0

überprüfen können Sie tun:

<md-tab-group #tabgroup (focusChange)="changeTab(tabgroup)"> 
    <md-tab label="Tab 1">Content 1</md-tab> 
    <md-tab label="Tab 2">Content 2</md-tab> 
</md-tab-group> 

in TS-Datei:

public changeTab(tabgroup) { 
    let pid = tabgroup._currentLabelWrapper.id;  
    let activeTab =$("#"+pid).text().trim(); 
    console.dir("Active tab: " + activeTab); 
} 

Auf diese Weise können kann eine beliebige Anzahl von Tabs und Instantls haben y Sie können auswählen, welche Registerkarte aktuell ausgewählt wurde.

Verwandte Themen