首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在mat选项卡上将无选项卡设置为默认活动选项卡

问在mat选项卡上将无选项卡设置为默认活动选项卡
EN

Stack Overflow用户
提问于 2018-12-17 23:03:33
回答 3查看 10.1K关注 0票数 3

我使用mat-tab实现了搜索功能,我不需要在初始加载时选择选项卡。仅当用户单击特定选项卡时,选项卡才会激活。

目前,第一个选项卡在加载时处于活动状态。我试过设置selectedIndex="null",但不起作用。此外,我还需要在单击按钮时重置选定的选项卡。

​

​

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-12-18 00:07:28

在当前的API版本中,没有预定义的选项来取消选择所有选项卡,因为这意味着至少应该有一个选项卡处于活动状态。但是有一个小的变通方法(看起来很不错):我们可以在索引0中再添加一个辅助选项卡,让它为空(没有任何内容),然后用display: none隐藏它。这样你就有了额外的不可见标签,而且你仍然可以选择导航到这个标签,它看起来非常接近于取消选择所有的标签。

只需几行HTML / CSS就可以实现。

HTML:

代码语言:javascript
复制
<button (click)="tabs.selectedIndex = 0">RESET</button>
<mat-tab-group #tabs>
  <mat-tab></mat-tab> <!-- ADDITIONAL TAB -->
  <mat-tab label="First">
    <p>Content 1</p>
  </mat-tab>
  <mat-tab label="Second">
    <p>Content 2</p>
  </mat-tab>
  <mat-tab label="Third">
    <p>Content 3</p>
  </mat-tab>
</mat-tab-group>

CSS:

代码语言:javascript
复制
::ng-deep .mat-tab-labels > .mat-tab-label:first-child {
  display: none;
}

这是一个有效的,你可以看到它的实际效果。

票数 14
EN

Stack Overflow用户

发布于 2018-12-18 13:24:30

我的感觉是,如果你不想呈现任何标签内容最初或单位它已被点击。在单击选项卡面板之前,可以隐藏内容。如下所示:

.HTML

代码语言:javascript
复制
<mat-tab-group (selectedTabChange)="onTabPanelClick($event, $event.tab)">

        <mat-tab label="First-Tab">
          <div class="col-md-12" *ngIf="isFirstTabVisible">
          </div>
        </mat-tab>

        <mat-tab label="Second-tab">
          <div class="col-md-12" *ngIf="isSecondTabVisible">
          </div>
        </mat-tab>

        <mat-tab label="Third-tab">
          <div class="col-md-12" *ngIf="isThirdTabVisible">
          </div>
        </mat-tab>

</mat-tab-group>

.ts

代码语言:javascript
复制
onTabPanelClick(event, tab) {
   this.isFirstTabVisible= (event.index === 0) ? true : false;
   this.isSecondTabVisible= (event.index === 1) ? true : false;
   this.isThirdTabVisible= (event.index === 2) ? true : false;
}
票数 0
EN

Stack Overflow用户

发布于 2020-11-23 19:47:52

垫选项卡处于活动状态

垫-选项卡-标签-活动

代码语言:javascript
复制
::ng-deep .mat-tab-label-active {
  background-color : red;
  font-size : 15px
}
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53817845

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档