빈 상태
결과·데이터가 없을 때 이유와 다음 행동을 안내하는 표시다. 단순히 비었다고 말하는 대신, 왜 비었는지와 사용자가 지금 할 수 있는 일을 함께 보여준다.
활용 방법
검색 결과 없음
필터나 검색어를 조정할 수 있게 안내한다. 보통 action 은 생략한다.
Preview
결과가 없어요
검색어를 바꾸거나 필터를 조정해 보세요
tsx
<EmptyStateicon={<Search size={24} />}title="결과가 없어요"description="검색어를 바꾸거나 필터를 조정해 보세요"/>
첫 데이터
데이터가 아직 없고 생성이 다음 행동이면 action 을 넣는다.
Preview
아직 회사가 없어요
첫 회사를 추가해 보세요
tsx
<EmptyStateicon={<Inbox size={24} />}title="아직 회사가 없어요"description="첫 회사를 추가해 보세요"action={<Button size="sm">회사 추가</Button>}/>
권한 없음
권한 문제처럼 사용자가 직접 해결하기 어려운 경우는 요청할 대상을 설명한다.
Preview
접근 권한이 없어요
관리자에게 권한 부여를 요청하세요
tsx
<EmptyStateicon={<ShieldAlert size={24} />}title="접근 권한이 없어요"description="관리자에게 권한 부여를 요청하세요"/>
사용 지침
- · 로딩 중에는 EmptyState 가 아니라 Skeleton 을 쓴다.
- · 오류는 오류 상태로 표현한다. EmptyState 는 정상적으로 비어 있는 상태다.
- · 첫 데이터 화면에는 가능한 한 하나의 주요 action 만 둔다.
속성
| 이름 | 타입 | 기본값 | 설명 |
|---|---|---|---|
| icon | ReactNode | - | 상단 아이콘 |
| title | ReactNode | - | 빈 상태 제목 |
| description | ReactNode | - | 보조 설명 |
| action | ReactNode | - | 다음 행동 버튼/링크 |
| className | string | - | 폭·패딩 등 레이아웃 조절 |