Input Number
수량이나 금액을 범위와 간격에 맞게 입력하고 조절합니다.
사용 가이드
#수량·금액처럼 정확한 숫자와 범위 제어가 필요할 때 사용합니다.
오류 문구는 error 슬롯에 작성합니다.
컴포넌트 안에 <span slot="error">오류 메시지</span>을 넣으세요. 글자뿐 아니라 링크 등 필요한 안내도 넣을 수 있습니다. noNativeValidity를 지원하는 입력은 이를 켜면 브라우저 팝업 대신 이 안내를 표시합니다. Switch는 항상 컴포넌트 아래에 오류를 표시합니다.
업무 규칙의 실패는 setCustomError()로 알립니다.
예를 들어 서버가 중복된 값을 거절하면 error 슬롯의 문구를 바꾸고 setCustomError()를 호출하세요. 이 메서드에는 메시지 인자를 전달하지 않습니다. 사용자 지정 오류가 있으면 폼 제출도 차단됩니다.
해결 후 해제하고 제출 가능 여부를 확인합니다.
clearCustomError()로 업무 규칙 오류를 해제하세요. required나 입력 형식 검사까지 해제되지는 않습니다. await checkValidity()는 true/false를, reportValidity()는 검사 결과와 오류 표시를 함께 제공합니다. name을 지정한 유효한 값은 제출 시 FormData로 읽습니다.
- 허용 범위
min과max로 최솟값·최댓값을 제한합니다.- 증감 단위
step은 화살표 키와 증감 버튼의 변화량입니다. 코드에서는stepUp(n)·stepDown(n)을 사용할 수 있습니다.- 소수점 처리
decimalPlaces로 자릿수를,rounding으로 반올림 방식을 정하세요.
예제
#기능별 예제
#28개 주제에서 필요한 기능을 선택하세요. 속성 설정, 메서드 호출, 이벤트 결과와 슬롯 구성을 실행 화면과 코드로 확인할 수 있습니다.
일치하는 기능이 없습니다.
API reference
#이름에 마우스를 올리거나 키보드로 선택하면 적용 코드를 확인할 수 있습니다. 터치 화면에서는 이름을 누르세요.
<sy-input-number>
Properties
| Attribute / Property | Type | Default | Description |
|---|---|---|---|
boolean | false | 처음 연결될 때 입력란에 포커스를 보냅니다. | |
boolean | false | 기본 테두리를 숨깁니다. | |
number | undefined | 소수점 아래 자릿수입니다. | |
boolean | false | 사용자 조작과 키보드 포커스를 차단합니다. | |
string | "" | 항목을 설명하는 레이블입니다. | |
number | Number.MAX_SAFE_INTEGER | 입력 가능한 최댓값입니다. | |
number | Number.MIN_SAFE_INTEGER | 입력 가능한 최솟값입니다. | |
string | "" | FormData에 사용되는 필드 이름입니다. | |
boolean | false | 현재 값을 보여주면서 사용자 수정을 막습니다. | |
boolean | false | 값이 없으면 폼 검증을 실패시킵니다. | |
'round' | 'ceil' | 'floor' | undefined | 반올림·올림·내림 규칙입니다. | |
"small" | "medium" | "large" | "medium" | 컴포넌트의 크기입니다. | |
'default' | 'warning' | 'error' | 'success' | 'default' | 기본·성공·경고·오류 상태를 시각적으로 표현합니다. | |
number | 1 | 값을 증가·감소시키는 간격입니다. | |
string | number | '' | 현재 값 또는 항목의 식별 값입니다. 객체·배열 값은 JavaScript 프로퍼티로 전달합니다. | |
boolean | false | 브라우저의 기본 오류 표시 대신 앱의 오류 UI를 사용할 때 지정합니다. checkValidity 검사 자체는 유지됩니다. |
Events
| Event | Detail | Description |
|---|---|---|
CustomEvent<{ value: number | null; isValid: boolean; status: string }> | 값 또는 선택 상태가 바뀔 때 발생합니다. | |
CustomEvent<{ value: number | null; isValid: boolean; status: string }> | 포커스를 잃으면 발생합니다. | |
CustomEvent<{ value: number | null; isValid: boolean; status: string }> | 포커스를 받으면 발생합니다. |
Methods
| Method | Returns | Description |
|---|---|---|
Promise<void> | 입력 또는 동작 요소에 키보드 포커스를 보냅니다. | |
Promise<void> | 입력 요소에서 포커스를 해제합니다. | |
Promise<void> | 현재 값에서 n 단계만큼 증가합니다. 기본 n은 1입니다. | |
Promise<void> | 현재 값에서 n 단계만큼 감소합니다. 기본 n은 1입니다. | |
Promise<void> | 숫자 입력값을 비웁니다. | |
Promise<boolean> | 현재 제약 조건에 맞으면 true, 아니면 false를 반환합니다. | |
Promise<boolean> | 현재 값을 검사하고 오류를 사용자에게 표시합니다. | |
Promise<void> | 사용자 지정 오류 상태를 설정합니다. | |
Promise<void> | 사용자 지정 오류 상태를 해제합니다. | |
Promise<"" | "custom" | "valueMissing" | "typeMismatch" | "stepMismatch" | "rangeUnderflow" | "rangeOverflow"> | 현재 유효성 검사 상태를 반환합니다. |
Slots
| Slot | Description |
|---|---|
| 입력값 앞의 보조 내용입니다. | |
| 입력값 뒤의 보조 내용입니다. | |
| 유효성 검사 오류 메시지입니다. |