跳到主要内容

Steps 步骤条

介绍

步骤条组件,用于展示操作流程的各个步骤。

引入

在 Taro 项目中引入 Steps 组件:

import { Steps, Step } from '@taroify/core'

基本用法

<Steps current={1}>
<Step title="第一步" description="描述信息" />
<Step title="第二步" description="描述信息" />
<Step title="第三步" description="描述信息" />
</Steps>

带图标步骤

<Steps current={1}>
<Step
title="第一步"
description="描述信息"
icon={<View className="taroify-icon taroify-icon-check" />}
/>
<Step
title="第二步"
description="描述信息"
icon={<View className="taroify-icon taroify-icon-clock" />}
/>
<Step
title="第三步"
description="描述信息"
icon={<View className="taroify-icon taroify-icon-close" />}
/>
</Steps>

竖直线性步骤

<Steps direction="vertical" current={1}>
<Step title="第一步" description="描述信息" />
<Step title="第二步" description="描述信息" />
<Step title="第三步" description="描述信息" />
</Steps>

自定义样式

<Steps current={1} activeColor="#13C2C2">
<Step title="第一步" description="描述信息" />
<Step title="第二步" description="描述信息" />
<Step title="第三步" description="描述信息" />
</Steps>

点击步骤

<Steps current={current} onClick={setCurrent}>
<Step title="第一步" description="描述信息" />
<Step title="第二步" description="描述信息" />
<Step title="第三步" description="描述信息" />
</Steps>

属性

Steps Props

属性名类型默认值说明
currentnumber0当前激活步骤索引
direction'horizontal' | 'vertical''horizontal'步骤条方向
activeColorstring'#0066FF'激活步骤的颜色
inactiveColorstring'#969799'未激活步骤的颜色
onClick(index: number) => void-点击步骤时的回调函数

Step Props

属性名类型默认值说明
titleReactNode-步骤标题
descriptionReactNode-步骤描述
iconReactNode-步骤图标
status'wait' | 'process' | 'finish' | 'error'-步骤状态,优先级高于父组件的 current 属性

类型定义

interface StepsProps {
current?: number
direction?: 'horizontal' | 'vertical'
activeColor?: string
inactiveColor?: string
onClick?: (index: number) => void
children?: ReactNode
}

interface StepProps {
title?: ReactNode
description?: ReactNode
icon?: ReactNode
status?: 'wait' | 'process' | 'finish' | 'error'
children?: ReactNode
}

示例代码

import React, { useState } from 'react'
import { View, Text } from '@tarojs/components'
import { Steps, Step } from '@taroify/core'

export default function StepsExample() {
const [current, setCurrent] = useState(1)

return (
<View>
<Text className="example-title">基本用法</Text>
<Steps current={1}>
<Step title="第一步" description="描述信息" />
<Step title="第二步" description="描述信息" />
<Step title="第三步" description="描述信息" />
</Steps>

<Text className="example-title">带图标步骤</Text>
<Steps current={1}>
<Step
title="第一步"
description="描述信息"
icon={<View className="taroify-icon taroify-icon-check" />}
/>
<Step
title="第二步"
description="描述信息"
icon={<View className="taroify-icon taroify-icon-clock" />}
/>
<Step
title="第三步"
description="描述信息"
icon={<View className="taroify-icon taroify-icon-close" />}
/>
</Steps>

<Text className="example-title">竖直线性步骤</Text>
<Steps direction="vertical" current={1}>
<Step title="第一步" description="描述信息" />
<Step title="第二步" description="描述信息" />
<Step title="第三步" description="描述信息" />
</Steps>

<Text className="example-title">自定义样式</Text>
<Steps current={1} activeColor="#13C2C2">
<Step title="第一步" description="描述信息" />
<Step title="第二步" description="描述信息" />
<Step title="第三步" description="描述信息" />
</Steps>

<Text className="example-title">点击步骤</Text>
<Steps current={current} onClick={setCurrent}>
<Step title="第一步" description="描述信息" />
<Step title="第二步" description="描述信息" />
<Step title="第三步" description="描述信息" />
</Steps>
</View>
)
}