javascript - 有没有办法以编程方式更改激活的 mat-tab?

标签 javascript angular typescript angular-material

我想在 typescript 中更改激活的 mat-tab 文件。这里Programmatically select md-tab in Angular 2 material我找到了最接近的解决方案,但对于 md-tab 而不是 mat-tab。我试过了但没有用。这是我试过的

HTML

  <button class="btn btn-primary" (click)="changeTab()">Click me!</button>

    <mat-tab-group [selectedIndex]="selectedTab">
        <mat-tab label="Preview"> 
    </mat-tab>
        <mat-tab label="Tuning">
        <car-tuning></car-tuning>
        </mat-tab>
        <mat-tab label="Payment"></mat-tab> 
      </mat-tab-group> 

.TS 文件

 changeTab() {
     this.selectedTab =1;
}

最佳答案

您可以像这样添加双向绑定(bind) [(selectedIndex)]="selectedTab" 并且应该给您结果。

<button class="btn btn-primary" (click)="changeTab()">Click me!</button>

<mat-tab-group [(selectedIndex)]="selectedTab"> //<--- changes
   <mat-tab label="Preview"> 
   </mat-tab>
   <mat-tab label="Tuning">
     <car-tuning></car-tuning>
   </mat-tab>
    <mat-tab label="Payment"></mat-tab> 
</mat-tab-group> 

在 ts:

changeTab() {
   this.selectedTab = 1 //<------- your tab value
}

关于javascript - 有没有办法以编程方式更改激活的 mat-tab?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57906791/

相关文章:

javascript - 我应该停止使用 HTML 事件处理程序属性吗

javascript - 如何让JS在JS生成的帖子中工作?

javascript - Angular UI-Router 组件无法正常工作

javascript - 在同一个类的函数内部调用一个类的函数

angular - Angular 中 TestBed 的正确使用

javascript - 为什么我在 Vue.js 源代码中看到 TypeScript?

javascript - 禁止在一个请求中使用 application/json

javascript - 强制使用工厂

angular - 如何将 "monkey patch"设置为 Zone.js 的 Observable?

javascript - 如何推送设置了特定状态的数据?