Skip to Content

Steps

화면의 진행 단계를 시각적으로 표시하는 컴포넌트


개요

Steps는 steps 배열과 active 인덱스만으로 진행 단계를 선언적으로 표시하는 데이터 드리븐 스텝 컴포넌트입니다.

주요 특징

  • 데이터 드리븐: steps 배열로 단계를 선언적으로 정의
  • 상태 표시: 완료(체크)·진행 중·대기 상태 자동 인디케이터
  • 단계별 스타일: controlStyle로 색상·폰트 오버라이드 (상태별 자동 파생)
  • 숨김 처리: hidden 플래그로 특정 단계 비표시
  • 컨테이너 제목: title prop으로 상단 제목 표시
  • 표시 제어: visible prop으로 전체 표시/숨김

기본 사용

steps 배열과 active 인덱스를 전달합니다.

요구사항 분석
설계
3
개발
4
테스트
5
배포

활성 단계 제어

activeonActiveChange로 현재 단계를 제어합니다.

1
요구사항 분석
2
설계
3
개발
4
테스트
5
배포

현재 단계: 0


컨테이너 제목

title prop으로 단계 표시줄 위에 제목을 표시합니다.

프로젝트 진행 현황
요구사항 분석
설계
개발
4
테스트
5
배포

단계별 스타일

각 단계에 controlStyle을 지정하면 상태(완료·진행·대기)에 따라 자동으로 색상이 파생됩니다.

접수
2
검토
3
승인

숨김 단계

hidden: true인 단계는 렌더링에서 제외됩니다.

1
단계 1
2
단계 3

스타일 오버라이드

backgroundColor, color로 컨테이너 스타일을 오버라이드합니다.

요구사항 분석
2
설계
3
개발
4
테스트
5
배포

API Reference

Props

PropTypeDefaultDescription
stepsStepItemData[][]단계 목록 데이터
activenumber0현재 활성 단계 인덱스 (0-based)
onActiveChange(index: number) => void-활성 단계 변경 콜백
titlestring-컨테이너 상단 제목
visiblebooleantrue표시 여부 (false → 렌더 안 함)
backgroundColorstring-컨테이너 배경색
colorstring-컨테이너 글자색
classNamestring-컨테이너 CSS 클래스
styleCSSProperties-인라인 스타일

StepItemData

FieldTypeRequiredDescription
titlestring단계 제목
hiddenboolean-true이면 해당 단계를 렌더링에서 제외
translateboolean-i18n 번역 적용 여부
controlStyleStepControlStyle-단계별 스타일 오버라이드 (상태에 따라 자동 파생)

StepControlStyle

FieldTypeDescription
borderColorstring인디케이터 테두리 색상
borderWidthstring인디케이터 테두리 두께
colorstring인디케이터/텍스트 색상
fontFamilystring폰트 패밀리
fontSizestring폰트 크기
fontWeightstring폰트 굵기
fontStylestring폰트 스타일
textAlignstring텍스트 정렬

접근성

권장 사항

  • ✅ 활성 단계에 aria-current="step" 자동 적용
  • ✅ 완료 단계에 체크 아이콘 + 시각적 구분 자동 적용
  • ✅ 단계 인디케이터에 순서 번호 표시
  • ❌ 단계 수가 많은 경우 모바일 대응을 위해 스크롤 또는 축약 표시를 고려

관련 컴포넌트

Last updated on