Banner
페이지 맨 위 안내(이메일 인증 등)와 행동 하나.
- 출시 화면에서 사용
개요
미리보기
mina@example.com로 보낸 메일의 링크를 눌러 이메일을 인증해 주세요.
예시
상태
기본
mina@example.com로 보낸 메일의 링크를 눌러 이메일을 인증해 주세요.
행동 없음
mina@example.com로 보낸 메일의 링크를 눌러 이메일을 인증해 주세요.
처리 중
mina@example.com로 보낸 메일의 링크를 눌러 이메일을 인증해 주세요.
연결 끊김
Gmail 연결이 끊겼어요. 읽어 온 기록은 그대로 있어요.
가장 긴 문구 (es)
mina.kim.portfolio@example.com로 보낸 메일의 링크를 눌러 이메일을 인증해 주세요.
이렇게 · 이렇게 하지 않기
- 이렇게 계정 전체에 해당하는 일(이메일 인증, 연결 끊김)에만 쓴다. 한 번에 하나만 보이고 닫을 수 있다.
- 이렇게 하지 않기 홍보나 업셀에 쓰지 않는다. 일부 실패 안내는 Banner가 아니라 영역 안 Alert다.
- 이렇게 하지 않기 흐름을 막지 않는다. 이메일 인증을 가입 경로의 관문으로 만들지 않는다.
토큰과 속성
| 이름 | 타입 | 기본값 | 설명 |
|---|---|---|---|
children | ReactNode | mina@example.com로 보낸 메일의 링크를 눌러 이메일을 인증해 주세요. | 계정 전체에 해당하는 일 한 문장. |
action? | boolean | true | 행동 하나를 보인다(라벨이 있을 때). |
actionLabel? | ReactNode | 메일 다시 보내기 | 행동 라벨(동사). |
actionBusy? | boolean | false | 행동이 진행 중(재전송 중). Button loading이라 초점이 유지된다. |
dismissible? | boolean | true | 닫기 버튼. 닫으면 초점은 main의 h1로 간다. |
onAction / onDismiss | — | — | 행동과 닫기 콜백. 재전송 결과는 Toast로 알린다. |
| 그 밖의 속성 | — | — | className·style은 받지 않는다. 나머지 네이티브 속성은 바깥 요소로 전달된다. |
접근성
키보드: 행동 → 닫기 순서로 Tab. 닫으면 초점은 main h1(없으면 다음 요소). body에 떨어지지 않는다.
- role="region" aria-label="안내". main 안 첫 요소로 둔다. 페이지 로드 때 이미 있으면 알리지 않는다.
- 320px에서는 행동과 닫기가 문장 아래로 내려가며 DOM 순서를 유지한다.