Checkbox

여러 항목을 독립적으로 선택하거나 동의 여부를 확인합니다.

Live preview
컴포넌트를 조작하면 여기에 결과가 표시됩니다.
코드 보기
HTML
<sy-checkbox
  checked
  name="notifications"
  value="email"
  id="sample"
>알림 이메일 받기</sy-checkbox>

사용 가이드

#

여러 항목을 독립적으로 켜고 끌 때 사용합니다. 서로 배타적인 한 가지 값은 Radio로 선택하게 하세요.

  1. 오류 문구는 error 슬롯에 작성합니다.

    컴포넌트 안에 <span slot="error">오류 메시지</span>을 넣으세요. 글자뿐 아니라 링크 등 필요한 안내도 넣을 수 있습니다. noNativeValidity를 지원하는 입력은 이를 켜면 브라우저 팝업 대신 이 안내를 표시합니다. Switch는 항상 컴포넌트 아래에 오류를 표시합니다.

  2. 업무 규칙의 실패는 setCustomError()로 알립니다.

    예를 들어 서버가 중복된 값을 거절하면 error 슬롯의 문구를 바꾸고 setCustomError()를 호출하세요. 이 메서드에는 메시지 인자를 전달하지 않습니다. 사용자 지정 오류가 있으면 폼 제출도 차단됩니다.

  3. 해결 후 해제하고 제출 가능 여부를 확인합니다.

    clearCustomError()로 업무 규칙 오류를 해제하세요. required나 입력 형식 검사까지 해제되지는 않습니다. await checkValidity()는 true/false를, reportValidity()는 검사 결과와 오류 표시를 함께 제공합니다. name을 지정한 유효한 값은 제출 시 FormData로 읽습니다.

선택·해제

checked로 선택 상태를 관리합니다. 항목 하나를 바꿔도 다른 항목의 선택은 유지합니다.

일부 선택

indeterminate는 하위 항목의 일부만 선택되었음을 나타냅니다. 실제 checked 값은 앱에서 관리하세요.

기능별 예제

#

10개 주제에서 필요한 기능을 선택하세요. 속성 설정, 메서드 호출, 이벤트 결과와 슬롯 구성을 실행 화면과 코드로 확인할 수 있습니다.

사용 예제 · Overview

선택한 예제를 직접 조작해 보세요. 여러 구성이 있는 주제는 세부 예제를 바꿀 수 있습니다.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Checked

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Disabled

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Indeterminate

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Readonly

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

속성 · Required

설정에 따라 표시와 동작이 어떻게 달라지는지 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

메서드 · Set Focus & Blur

예제 안의 버튼으로 메서드를 호출하고 실제 결과를 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

메서드 · setCustomError

예제 안의 버튼으로 메서드를 호출하고 실제 결과를 확인하세요.

코드 보기
HTML
예제를 불러오고 있습니다.

이벤트 · Changed

컴포넌트를 조작하면 아래 실행 화면에 이벤트 이름과 전달 값이 표시됩니다.

코드 보기
HTML
예제를 불러오고 있습니다.

사용 예제 · 체크박스 보조 설명

checkboxTitle은 내부 체크박스의 title에 전달됩니다. 기본 슬롯에는 화면에 보일 문구를, title에는 추가 설명을 지정하세요.

코드 보기
HTML
<sy-checkbox
  checked
  title="프로젝트의 변경 사항을 이메일로 받습니다."
  name="notifications"
  value="email"
  id="sample"
>알림 이메일 받기</sy-checkbox>

<script type="module">
  const component1 = document.querySelector("#sample");
  Object.assign(component1, {
    "checkboxTitle": "프로젝트의 변경 사항을 이메일로 받습니다."
  });
</script>

API reference

#

이름에 마우스를 올리거나 키보드로 선택하면 적용 코드를 확인할 수 있습니다. 터치 화면에서는 이름을 누르세요.

<sy-checkbox>

Properties

Attribute / PropertyTypeDefaultDescription
string''체크박스에 표시할 title 속성입니다.
string''FormData에 사용되는 필드 이름입니다.
string'on'현재 값 또는 항목의 식별 값입니다.
booleanfalse선택 또는 켜짐 상태입니다.
booleanfalse사용자 조작과 키보드 포커스를 차단합니다.
booleanfalse일부 항목만 선택된 중간 상태입니다.
booleanfalse현재 값을 보여주면서 사용자 수정을 막습니다.
booleanfalse값이 없으면 폼 검증을 실패시킵니다.
booleanfalse브라우저의 기본 오류 표시 대신 앱의 오류 UI를 사용할 때 지정합니다. checkValidity 검사 자체는 유지됩니다.

Events

EventDetailDescription
CustomEvent<{ value: boolean; isValid: boolean; checked: boolean; indeterminate: boolean }>값 또는 선택 상태가 바뀔 때 발생합니다.
CustomEvent<boolean>포커스를 받으면 발생합니다.
CustomEvent<boolean>포커스를 잃으면 발생합니다.

Methods

MethodReturnsDescription
Promise<void>입력 또는 동작 요소에 키보드 포커스를 보냅니다.
Promise<void>입력 요소에서 포커스를 해제합니다.
Promise<boolean>현재 제약 조건에 맞으면 true, 아니면 false를 반환합니다.
Promise<boolean>현재 값을 검사하고 오류를 사용자에게 표시합니다.
Promise<string>현재 유효성 검사 상태를 반환합니다.
Promise<void>사용자 지정 오류 상태를 설정합니다.
Promise<void>사용자 지정 오류 상태를 해제합니다.

Slots

SlotDescription
컴포넌트의 본문 또는 자식 항목입니다.
유효성 검사 오류 메시지입니다.