Skip to content

Steps 步骤条

引导用户按照流程完成任务的导航条。融合了 Element Plus、Naive UI、Ant Design 各家之长,并首创了导航风格与可点击切换功能。

基础用法

简单的步骤条。设置 active 属性,接受一个 number,表示当前激活步骤的索引(从 0 开始)。

步骤 1
这是一段描述文字
步骤 2
这是一段描述文字
步骤 3
这是一段描述文字
基础用法

竖式步骤条

设置 direction="vertical" 可以使步骤条垂直显示。

步骤 1
这是一段描述文字
步骤 2
这是一段描述文字
步骤 3
这是一段描述文字
竖式步骤条

简洁风格

设置 simple 可以启用简洁风格的步骤条。

步骤 1
步骤 2
步骤 3
简洁风格

点状步骤条

设置 progress-dot 可以启用点状风格。

步骤 1
这是一段描述文字
步骤 2
这是一段描述文字
步骤 3
这是一段描述文字
点状步骤条

导航风格

设置 progress-dot="navigation" 可以启用导航风格的步骤条,适合流程引导场景。

步骤 1
确认订单
步骤 2
支付订单
步骤 3
完成
导航风格

步骤状态

通过 status 属性可以自定义每个步骤的状态。支持 waitprocessfinisherrorsuccess 五种状态。

完成
0
进行中
出错
0
待完成
成功
进行中
等待
步骤状态

居中对齐

设置 align-center 可以使步骤条内容居中对齐。

步骤 1
这是一段描述文字
步骤 2
这是一段描述文字
步骤 3
这是一段描述文字
居中对齐

可点击切换

设置 clickable 可以通过点击步骤来切换当前步骤。需要配合 @change 事件使用。

步骤 1
步骤 2
步骤 3

当前步骤:1

可点击切换

自定义间距

通过 space 属性可以设置每个步骤的间距,支持数字(px)或百分比字符串。

步骤 1
步骤 2
步骤 3
步骤 1
步骤 2
步骤 3
自定义间距

结束步骤状态

通过 finish-status 可以设置结束步骤的状态,默认为 finish,可选值包括 success

步骤 1
步骤 2
步骤 3
结束步骤状态

自定义插槽

通过 icontitledescription 插槽可以自定义步骤内容。

🎉
自定义标题
自定义描述内容
步骤 2
普通步骤
完成
自定义插槽

在 Nuxt 中使用

组件已完美适配 Nuxt 3,支持自动导入与 SSR。

步骤 1
步骤 2
步骤 3
Nuxt 适配

迷你尺寸

设置 size="small" 可以使用更紧凑的小尺寸步骤条。

步骤 1
描述
步骤 2
描述
步骤 3
描述
迷你尺寸

响应式布局

设置 responsive 后,当窗口宽度小于断点(默认 768px)时自动切换为垂直布局。

步骤 1
这是描述
步骤 2
这是描述
步骤 3
这是描述
响应式布局

进度条连接线

设置 show-progress 后,连接线会显示为进度条样式。配合 Step 的 progress 属性可以显示当前步骤的完成进度。

步骤 1
步骤 2
步骤 3
当前步骤进度:50%
进度条连接线

时间线模式

设置 show-timeline 后可以显示时间信息,适合物流追踪、历史记录等场景。

2024-01-01 10:00
创建订单
订单已提交
2024-01-01 10:05
付款成功
支付完成
2024-01-02 08:00
商品发货
物流已揽收
确认收货
等待签收
时间线模式

禁用步骤

设置 Step 的 disabled 属性可以禁止点击该步骤。

步骤 1
步骤 2 (禁用)
步骤 3

当前步骤:0,第二步被禁用无法点击

禁用步骤

标签位置

设置 label-placement="vertical" 可以使标签垂直排列。

步骤 1
这是描述
步骤 2
这是描述
步骤 3
这是描述
标签位置

延迟渲染

设置 Step 的 lazy 属性可以延迟渲染内容,首次激活时才会渲染,提升性能。

步骤 1
步骤 1 的详细内容(立即加载)
步骤 2
步骤 3
延迟渲染

API

Steps Props

属性名说明类型默认值
active当前激活步骤(从 0 开始)number0
direction显示方向'horizontal' | 'vertical''horizontal'
align-center是否居中对齐booleanfalse
simple是否启用简洁风格booleanfalse
progress-dot点状/导航风格boolean | 'dot' | 'navigation'false
finish-status结束步骤的状态'wait' | 'process' | 'finish' | 'error' | 'success''finish'
process-status当前步骤的状态'wait' | 'process' | 'finish' | 'error' | 'success''process'
space每个 step 的间距(支持 px 或百分比)number | string
clickable是否可点击切换步骤booleanfalse
size尺寸'default' | 'small''default'
responsive是否响应式(小屏幕自动切换为垂直)booleanfalse
responsive-breakpoint响应式断点(px)number768
label-placement标签位置'horizontal' | 'vertical''horizontal'
show-progress显示进度条连接线booleanfalse
show-timeline显示时间线booleanfalse

Steps Events

事件名说明类型
change点击步骤时触发(需开启 clickable)(index: number) => void

Steps Slots

插槽名说明参数
defaultStep 组件内容

Step Props

属性名说明类型默认值
title标题string''
description描述文字string''
icon自定义图标类名string''
status当前步骤状态(覆盖父组件设置)'wait' | 'process' | 'finish' | 'error' | 'success'''
disabled是否禁用该步骤booleanfalse
time时间信息(用于时间线模式)string''
progress进度百分比(0-100,用于进度条模式)number0
lazy是否延迟渲染内容booleanfalse

Step Slots

插槽名说明参数
default自定义内容区域
icon自定义图标
title自定义标题
description自定义描述
time自定义时间内容

主题变量

变量名说明默认值
--yh-steps-icon-size图标区域大小28px
--yh-steps-line-color连接线颜色var(--yh-border-color-light)
--yh-steps-finish-color完成状态颜色var(--yh-color-primary)
--yh-steps-process-color进行中状态颜色var(--yh-color-primary)
--yh-steps-wait-color等待状态颜色var(--yh-text-color-placeholder)
--yh-steps-error-color错误状态颜色var(--yh-color-danger)
--yh-steps-success-color成功状态颜色var(--yh-color-success)

Expose

当前组件未暴露公开实例方法或属性。

类型导出

名称说明
YhStepsPropsSteps 组件 Props 类型
YhStepsEmitsSteps 组件事件类型
YhStepsSlotsSteps 组件插槽类型
YhStepsDirection方向联合类型
YhStepsStatus状态联合类型
YhStepsProgressDot点状模式类型
YhStepsSize尺寸联合类型
YhStepsLabelPlacement标签位置联合类型
YhStepConfigStep 配置类型
YhStepPropsStep 组件 Props 类型
YhStepSlotsStep 组件插槽类型
YhStepsInstanceSteps 组件实例类型
YhStepInstanceStep 组件实例类型

Released under the MIT License.