You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何仅将mat-stepper用作展示组件并禁用选择功能?

将Mat-Stepper作为纯展示组件并禁用选择功能

期望效果

期望实现纯展示型垂直时间线,仅显示步骤序号与标签,无任何点击选择或交互切换的功能。

当前实现问题

当前使用Mat-Stepper的实现仍允许点击步骤进行切换,无法满足纯展示的需求。

当前代码

<mat-stepper orientation="vertical" >
<div *ngFor="let step of steps; let i = index;">
    <mat-step [completed]="false" [editable]="false" state="number">
        <ng-template matStepLabel>
            Step {{i}}
        </ng-template>
    </mat-step>
</div>

解决方案

当然可以将Mat-Stepper作为纯展示组件使用,只需通过以下几步禁用其选择功能:

  • 禁用步骤交互
    给每个mat-step添加[disabled]="true"属性,同时给mat-stepper加上linear属性,彻底阻止步骤切换:

    <mat-stepper orientation="vertical" linear>
      <div *ngFor="let step of steps; let i = index;">
        <mat-step [completed]="false" [editable]="false" [disabled]="true" state="number">
          <ng-template matStepLabel>
            Step {{i}}
          </ng-template>
        </mat-step>
      </div>
    </mat-stepper>
    
  • 移除点击事件(增强体验)
    通过CSS禁用步骤头部的点击响应,避免用户点击时出现无效反馈:

    .mat-step-header {
      pointer-events: none;
      cursor: default;
    }
    
  • 自定义样式匹配期望效果(可选)
    如果需要调整样式以更贴近纯时间线的视觉效果,可以添加自定义CSS隐藏选中状态高亮:

    .mat-step-header.mat-step-selected {
      background-color: transparent;
      color: inherit;
    }
    

内容的提问来源于stack exchange,提问作者Kyofa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 17:05:03