Skip to content

Steps

Multi-step process guidance component. Supports horizontal/vertical directions, four states (wait/process/finish/error), dot style, and clickable switching.

Basic Usage

vue
<template>
  <see-steps v-model="current" :steps="steps" />
</template>

<script setup>
import { ref } from 'vue'
const current = ref(1)
const steps = [
  { title: 'Step One', description: 'Description One' },
  { title: 'Step Two', description: 'Description Two' },
  { title: 'Step Three', description: 'Description Three' }
]
</script>

Vertical Direction

vue
<template>
  <see-steps v-model="current" :steps="steps" direction="vertical" />
</template>

Dot Style

vue
<template>
  <see-steps v-model="current" :steps="steps" :is-dot-style="true" />
</template>

StepItem

PropertyTypeDescription
titlestringStep title
descriptionstringStep description
iconstringStep icon
status'wait' | 'process' | 'finish' | 'error'Step status

Free Jumping

By default (when isClickable=true), users can only step back to previously completed steps. To allow jumping freely between any steps, enable isFreeJump:

vue
<template>
  <see-steps
    v-model="current"
    :steps="steps"
    :is-clickable="true"
    :is-free-jump="true"
  />
</template>

Props

PropertyTypeDefaultDescription
modelValuenumber0Current step index (out-of-range values are clamped to [0, steps.length - 1])
stepsStepItem[][]Step list
direction'horizontal' | 'vertical''horizontal'Direction
activeColorstring''Color when active
inactiveColorstring''Color when inactive
isDotStylebooleanfalseWhether to use dot style
isClickablebooleanfalseWhether clickable
isFreeJumpbooleanfalseWhether to allow free jumping. When false, only allows stepping back to completed steps; when true, any step can be activated

Events

EventParametersDescription
update:modelValuevaluev-model sync (emitted on click)
onChangeindex, stepStep switch
onFinish-Complete all steps (emitted when switching to the last step)

Liao ICP No. 2025070134