Switch
Switch (스위치)
스위치는 켜짐/꺼짐(on/off)처럼 상호 배타적인 두 옵션 중 하나를 선택하게 해 주는 요소예요. 스위치를 활성화하면 즉시 변경이 일어나죠. 설정을 한 번에 켜고 끄는 토글 방식이라고 생각하면 쉬워요.
변경을 적용하기 전에 제출 단계가 필요한 컴포넌트가 필요하거나, 불확정(indeterminate) 상태를 지정해야 한다면 checkbox를 시도해 보세요.
출처: React Switch 문서
본문
Layout (레이아웃)
대부분의 경우 라벨과 함께 스위치를 사용하세요. 라벨은 스위치 위쪽이나 양쪽에 나타날 수 있어요. 라벨 없이 스위치를 사용한다면, 그 맥락이 명확해야 해요. 예를 들어 스위치가 열 헤더로 표현되는 데이터 그리드에서처럼요.

직관적인 연상을 위해 스위치 라벨을 충분히 가까이 두세요
Accessibility (접근성)
아이콘이 있는 스위치를 사용한다면, hidden 텍스트 라벨을 사용해 화면 낭독기에 스위치의 목적을 식별하게 하세요.
Content (콘텐츠)
Labels (라벨)
스위치 설정을 설명하는 라벨로는 명사나 짧은 명사구를 사용하세요. 시각적·프로그래밍된 단서와 함께 명사만 사용해도 상태를 추론하기에 충분한 경우가 많아요.

명사가 어색하거나 애매하다면, 명확성을 위해 동사를 추가하세요. 동사는 항상 설정의 긍정적 상태를 설명해야 해요. 스위치 라벨에 "Turn on"이나 "Turn off"는 사용하지 마세요. 대신 설정이 활성화된 것이 무엇을 의미하는지 설명하는 구체적인 동사를 사용하세요.

명확성에 도움이 되면 스위치 라벨에 구체적인 동사를 사용하세요


라벨의 애매한 명사와 상태 표시는 추가 혼란을 일으킬 수 있어요
스위치 라벨에는 끝 문장 부호 없는 문장형 대문자 표기(sentence case)를 사용하세요. 스위치 라벨을 질문으로 만들지 마세요.

질문 형식의 스위치 라벨은 인지 부하를 늘릴 수 있어요
Including more info (추가 정보 포함)
스위치 상태에 대한 추가 표시를 포함해야 한다면 tooltip을 사용하세요.

스위치가 촉발하는 설정에 대한 더 많은 정보를 포함해야 한다면, info button 또는 도움말 텍스트가 있는 switch field를 시도해 보세요.

사람들을 상호작용에서 벗어나게 해 더 많은 정보를 주는 것이 말이 된다면, 주제에 대해 더 배울 수 있도록 link를 사용해 보세요. 다만 사람들을 원래 맥락에서 벗어나게 하는 데는 주의하세요.

더 알아보기 (Learn more)
- Switch 스토리북 및 React 가이드: react.fluentui.dev
- Switch Web Components 가이드: web-components.fluentui.dev
- Switch 패턴 WAI 가이드: W3C WAI-ARIA
- 제출 단계가 필요하거나 불확정 상태가 필요하면 Checkbox 참고