沙盘演示系统应用的微信小程序
编辑 | blame | 历史 | 原始文档

---
title: Steps 步骤条
description: 用于任务步骤展示或任务进度展示。
spline: navigation

isComponent: true

引入

全局引入,在 miniprogram 根目录下的app.json中配置,局部引入,在需要引入的页面或组件的index.json中配置。

"usingComponents": {
  "t-steps": "tdesign-miniprogram/steps/steps",
  "t-step-item": "tdesign-miniprogram/step-item/step-item",
}

代码演示

步骤条,方向可以横向和纵向,可以自定义步骤条显示内容以及是否可写

组件类型

水平步骤条

支持三种类型:序号、图标、简略

{{ horizontal }}

垂直步骤条

支持三种类型:序号、图标、简略

{{ vertical }}

组件状态

选项卡状态

共支持 4 种状态:未完成(default)、已完成(finish)、进行中(process)、错误(error)

{{ status }}

特殊类型

通过已有特性,改造出两种常见类型:

  • 垂直自定义(在 Cascader 中使用)
  • 纯展示步骤条

可以参考以下代码实现

{{ special }}

API

Steps Props

名称 类型 默认值 说明 必传

current | String / Number | - | 当前步骤,即整个步骤条进度。默认根据步骤下标判断步骤的完成状态,当前步骤为进行中,当前步骤之前的步骤为已完成,当前步骤之后的步骤为未开始。如果每个步骤没有设置 value,current 值为步骤长度则表示所有步骤已完成。如果每个步骤设置了自定义 value,则 current = 'FINISH' 表示所有状态完成 | N
default-current | String / Number | undefined | 当前步骤,即整个步骤条进度。默认根据步骤下标判断步骤的完成状态,当前步骤为进行中,当前步骤之前的步骤为已完成,当前步骤之后的步骤为未开始。如果每个步骤没有设置 value,current 值为步骤长度则表示所有步骤已完成。如果每个步骤设置了自定义 value,则 current = 'FINISH' 表示所有状态完成。非受控属性 | N
current-status | String | process | 用于控制 current 指向的步骤条的状态。可选项:default/process/finish/error | N
layout | String | horizontal | 步骤条方向,有两种:横向和纵向。可选项:horizontal/vertical | N
readonly | Boolean | false | 只读状态 | N
sequence | String | positive | 步骤条顺序。可选项:positive/reverse | N
theme | String | default | 步骤条风格。可选项:default/dot | N

Steps Events

名称 参数 描述
change ({current: string \| number, previous: string \| number}) 当前步骤发生变化时触发

Steps 外部样式类

类名 说明
t-class 根节点样式类

StepItem Props

名称 类型 默认值 说明 必传
content String / Slot '' 步骤描述。通用类型定义 N

icon | String / Slot | - | 图标。传入 slot 代表使用插槽,其他字符串代表使用内置图标。通用类型定义 | N
status | String | default | 当前步骤的状态:默认状态(未开始)、进行中状态、完成状态、错误状态。可选项:default/process/finish/error。TS 类型:StepStatus type StepStatus = 'default' \| 'process' \| 'finish' \| 'error'详细类型定义 | N
sub-step-items | Array | [] | 已废弃。子步骤条,仅支持 layout = 'vertical' 时。TS 类型:SubStepItem[] interface SubStepItem { status: StepStatus, title: string }详细类型定义 | N
title | String / Slot | '' | 标题。通用类型定义 | N

StepItem 外部样式类

类名 说明
t-class 根节点样式类
t-class-content 内容样式类
t-class-title 标题样式类
t-class-description 描述样式类
t-class-extra 额外样式类

CSS 变量

组件提供了下列 CSS 变量,可用于自定义样式。
名称 | 默认值 | 描述
-- | -- | --
--td-step-item-circle-font-size | 28rpx | -
--td-step-item-circle-size | 44rpx | -
--td-step-item-default-circle-bg | @bg-color-secondarycontainer | -
--td-step-item-default-circle-color | @font-gray-3 | -
--td-step-item-default-dot-border-color | @component-border | -
--td-step-item-default-icon-color | @font-gray-3 | -
--td-step-item-default-title-color | @font-gray-3 | -
--td-step-item-description-color | @font-gray-3 | -
--td-step-item-dot-size | 16rpx | -
--td-step-item-error-circle-bg | @error-color-1 | -
--td-step-item-error-circle-color | @error-color | -
--td-step-item-error-dot-border-color | @error-color | -
--td-step-item-error-icon-color | @error-color | -
--td-step-item-error-title-color | @error-color | -
--td-step-item-finish-circle-bg | @brand-color-light | -
--td-step-item-finish-circle-color | @brand-color | -
--td-step-item-finish-dot-border-color | @brand-color | -
--td-step-item-finish-icon-color | @brand-color | -
--td-step-item-finish-line-color | @brand-color | -
--td-step-item-finish-title-color | @font-gray-1 | -
--td-step-item-line-color | @component-border | -
--td-step-item-process-circle-bg | @brand-color | -
--td-step-item-process-circle-color | @font-white-1 | -
--td-step-item-process-dot-border-color | @brand-color | -
--td-step-item-process-icon-color | @brand-color | -
--td-step-item-process-title-color | @brand-color | -