Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

Slate 입력과 선택 위젯

Control에는 Button, Checkbox, Dropdown, Input Box, Multiselect Box, Radio button, Segmented Control, Slider, Textarea와 Toggle이 있습니다.

열 가지 위젯의 공통 속성 disabled는 필수 Boolean이며 기본값은 false입니다. "{{w1.on}}"처럼 Boolean을 반환하는 참조로 사용자 조작을 막을 수 있습니다. 아래 표에서 상호작용값은 사용자의 조작으로 갱신되며, 별도 표시가 없는 속성은 편집자가 구성하는 설정값입니다.

Button

속성자료형필수역할
cssClassesString[]아니요버튼에 적용할 CSS class입니다. 설정값입니다.
textString예버튼 문구입니다. 설정값입니다.
{"cssClasses":["pt-button","pt-intent-primary"],"disabled":false,"text":"Run"}

기본 구성은 위 값에 queryNames 빈 배열을 포함합니다.

{"cssClasses":["pt-button","pt-intent-primary"],"disabled":false,"queryNames":[],"text":"Run"}

클릭에 실행할 동작은 이벤트로 연결합니다.

Checkbox

속성자료형필수역할과 변경
displayValuesString[]아니요항목별 표시값입니다. values와 대응하며 생략하면 원래 값을 표시합니다. 설정값입니다.
hoverICheckboxHover아니요tooltipsEnabled일 때 포인터가 놓인 항목입니다. 상호작용값입니다.
selectedDisplayValuesString[]예선택한 항목의 표시값입니다. 상호작용값입니다.
selectedValuesAny[]예체크한 원래 값입니다. 상호작용값입니다.
tooltipsEnabledBoolean예tooltip 사용 여부입니다. 설정값입니다.
tooltipTextString아니요HTML을 지원하며 null 또는 빈 문자열이면 표시하지 않습니다. 설정값입니다.
valuesAny[]예선택 항목입니다. 설정값입니다.

ICheckboxHover는 displayValue(String), index(Number), value(Any)를 모두 가집니다. 각각 현재 표시값, 항목 인덱스와 원래 값이며 포인터 상호작용으로 바뀝니다.

속성자료형필수역할과 변경
defaultPositionString아니요열 때 top 또는 bottom 위치를 선택합니다. 설정값입니다.
fuzzySearchEnabledBoolean예유사 검색을 켭니다. 설정값입니다.
displayValuesAny[]아니요표시값이며 생략하면 values를 사용합니다. 설정값입니다.
groupsAny[]아니요대응하는 values 항목의 그룹입니다. 설정값입니다.
maintainValidSelectionBoolean예위젯을 다시 계산할 때 현재 선택이 여전히 유효하면 유지합니다. 설정값입니다.
searchTextString예검색 입력입니다. 상호작용값입니다.
selectedDisplayValueString예선택한 표시값입니다. 상호작용값입니다.
selectedValueAny예선택한 원래 값입니다. 상호작용값입니다.
serverSearchEnabledBoolean예입력 검색어로 새 질의를 사용하는 방식입니다. 끄면 values 안에서 검색합니다. 설정값입니다.
valuesAny[]예선택할 값입니다. displayValues를 쓰면 일대일로 대응해야 합니다. 설정값입니다.

동적 예제의 query1은 memberName과 memberId 배열을 반환하는 질의입니다. 검색어를 사용하는 질의를 연결합니다.

{
  "disabled":false,
  "displayValues":"{{query1.memberName}}",
  "searchText":"John",
  "selectedValue":"65849",
  "serverSearchEnabled":true,
  "values":"{{query1.memberId}}"
}

정적 선택 예와 기본 구성은 다음과 같습니다.

{
  "disabled":false,
  "searchText":"",
  "selectedValue":"giraffe",
  "serverSearchEnabled":false,
  "values":["giraffe","rhinoceros","elephant"]
}
{"disabled":false,"searchText":"","selectedValue":null,"serverSearchEnabled":false,"values":[]}

Input Box

속성자료형필수역할과 변경
placeholderString아니요입력 안내입니다. IE9에서는 지원하지 않습니다. 설정값입니다.
queryNamesString[]아니요Enter를 누르면 실행할 질의 이름들입니다. 설정값입니다.
textString예사용자가 입력한 값입니다. 상호작용값입니다.
{"disabled":false,"placeholder":"Choose an animal...","queryNames":["query1"],"text":""}

clear 액션은 입력값을 지웁니다. 기본값은 다음과 같습니다.

{"disabled":false,"placeholder":"placeholder goes here","text":""}

Multiselect Box

속성자료형필수역할과 변경
displayValuesString[]아니요표시값이며 생략하면 values입니다. 설정값입니다.
fuzzySearchEnabledBoolean예유사 검색을 켭니다. 설정값입니다.
placeholderString아니요선택 입력의 안내입니다. 설정값입니다.
hasValuesBoolean예입력값이 있는지 나타냅니다. 상호작용값입니다.
selectedDisplayValuesString[]예선택한 표시값들입니다. 상호작용값입니다.
selectedValuesAny[]예선택한 원래 값들입니다. 상호작용값입니다.
searchTextString예검색어입니다. 상호작용값입니다.
serverSearchEnabledBoolean예검색어로 질의를 사용합니다. 끄면 values에서 검색합니다. 설정값입니다.
tokenSeparatorString아니요토큰 구분자입니다. 생략하면 토큰화하지 않으며 입력의 줄바꿈은 공백으로 읽습니다. 설정값입니다.
valuesAny[]예선택할 값이며 displayValues와 일대일로 대응합니다. 설정값입니다.

동적 질의 연결 예입니다.

{
  "disabled":false,
  "displayValues":"{{query1.memberName}}",
  "hasValues":false,
  "searchText":"John",
  "selectedDisplayValues":[],
  "selectedValues":[],
  "serverSearchEnabled":true,
  "values":"{{query1.memberId}}"
}

정적 항목 두 개를 선택한 상태와 기본 구성은 다음과 같습니다.

{
  "disabled":false,
  "hasValues":true,
  "selectedDisplayValues":["giraffe","rhinoceros"],
  "selectedValues":["giraffe","rhinoceros"],
  "serverSearchEnabled":false,
  "values":["giraffe","rhinoceros","elephant"]
}
{"disabled":false,"hasValues":false,"selectedDisplayValues":[],"selectedValues":[],"serverSearchEnabled":false,"values":[]}

Radio button

속성자료형필수역할과 변경
displayValuesString[]아니요values의 각 항목에 대응하는 표시값이며 생략하면 원래 값을 표시합니다. 설정값입니다.
preselectFirstElementBoolean예첫 항목을 기본 선택할지 정합니다.
hoverIRadioHover아니요tooltipsEnabled일 때 포인터가 놓인 항목입니다. 상호작용값입니다.
selectedDisplayValueString예선택한 표시값입니다. 상호작용값입니다.
selectedValueAny예선택한 원래 값입니다. 상호작용값입니다.
tooltipsEnabledBoolean예tooltip 사용 여부입니다. 설정값입니다.
tooltipTextString아니요HTML을 지원하며 null이나 빈 문자열이면 표시하지 않습니다. 설정값입니다.
valuesAny[]예라디오 항목들입니다. 설정값입니다.

IRadioHover는 필수 displayValue(String), index(Number), value(Any)를 가지며 현재 가리키는 항목을 나타냅니다.

Segmented Control

속성자료형필수역할과 변경
displayValuesAny[]아니요표시값이며 생략하면 values입니다. 설정값입니다.
hoverISegmentedControlHover아니요tooltip을 사용하는 항목의 포인터 상태입니다. 상호작용값입니다.
multiselectEnabledBoolean예단일 또는 다중 선택을 정합니다.
preselectFirstElementBoolean예첫 항목의 기본 선택 여부입니다.
selectionRequiredBoolean예선택된 마지막 항목을 해제하지 못하게 합니다. 처음에 선택이 없으면 사용자가 처음 선택한 뒤부터 적용합니다.
selectedValuesAny[]예선택값 목록입니다. 상호작용값입니다.
tooltipsEnabledBoolean예tooltip 표시 여부입니다. 상호작용값입니다.
tooltipTextString아니요HTML을 지원하는 tooltip 내용입니다. 설정값입니다.
valuesAny[]예선택값이며 displayValues와 일대일로 대응합니다. 설정값입니다.

ISegmentedControlHover의 필수 필드는 displayValue(String), index(Number), value(Any)입니다. index는 왼쪽에서 오른쪽으로 센 segment 위치입니다.

Slider

속성자료형필수역할과 변경
formatModeString예Grouped는 구분자로 숫자를 묶고, Numeric은 Numeral.js 형식, Time은 Moment 형식을 사용합니다. 설정값입니다.
formatterString아니요Numeric 또는 Time의 형식 문자열입니다.
fromNumber예범위 모드의 하한 또는 단일 손잡이 값입니다. 상호작용값입니다.
groupingDelimiterString아니요Grouped의 구분자입니다. 쉼표를 쓰면 1000000을 1,000,000처럼 표시합니다.
max / minNumber예선택할 수 있는 상한과 하한입니다. 설정값입니다.
numLabelsNumber예축 레이블 수이며 생략 시 기본값은 6입니다.
postfixString아니요뒤에 붙일 문구입니다. €는 100을 100 €로 표시합니다.
prefixString아니요앞에 붙일 문구입니다. $는 100을 $100으로 표시합니다.
rangeEnabledBoolean예범위 또는 단일 값 선택을 정합니다.
stepNumber아니요선택값의 간격입니다.
toNumber아니요범위 모드의 상한입니다. 상호작용값입니다.
updateOnSlideBoolean예Release는 손잡이를 놓은 뒤, Slide는 움직이는 동안 갱신하는 선택입니다. Slide 갱신은 100ms로 제한하며 가벼운 UI 동작에 사용하는 것을 권장합니다.

query1.maxValue가 숫자 하나를 반환하는 범위 예입니다.

{
  "disabled":false,
  "from":25,
  "groupingDelimiter":" ",
  "groupingEnabled":true,
  "max":"{{query1.maxValue}}",
  "min":1,
  "prefix":"$",
  "rangeEnabled":true,
  "to":50
}

기본 구성은 다음과 같습니다.

{"disabled":false,"from":25,"groupingEnabled":false,"max":100,"min":0,"rangeEnabled":false}

Textarea

Textarea는 마지막 입력 후 0.5초 동안 기다렸다가 값을 반영합니다. 이 위젯을 마지막으로 작성한 뒤 0.5초 안에 쓰기 질의를 제출하면 텍스트 끝부분이 빠질 수 있습니다. 제출 전 값 반영 시간을 확보하는 방법과 debounce가 없는 Input Box 대안은 빠른 제출 시 텍스트 누락에 설명합니다.

속성자료형필수역할과 변경
delimiterString아니요값 구분자입니다. text가 hello- -world이고 구분자가 - -이면 values는 hello와 world입니다.
hasValuesBoolean예입력값 존재 여부입니다. 상호작용값입니다.
maxLengthEnabledBoolean예입력 길이를 제한합니다.
maxLengthNumber아니요허용할 최대 길이입니다.
placeholderString아니요입력 안내이며 IE9에서는 지원하지 않습니다.
textString예입력한 전체 문자열입니다. 상호작용값입니다.
valuesArray예입력을 구분자로 나눈 값입니다. 상호작용값입니다.
{
  "delimiter":";",
  "disabled":false,
  "hasValues":true,
  "placeholder":"Choose an animal...",
  "text":"giraffe; rhinoceros; elephant",
  "values":["giraffe","rhinoceros","elephant"]
}
{"delimiter":";","disabled":false,"hasValues":false,"text":"","values":[]}

Toggle

속성자료형필수역할과 변경
offLabel / onLabelString예꺼짐과 켜짐 문구입니다. 설정값입니다.
useCustomIconsBoolean 체크박스예Blueprint 사용자 아이콘을 사용합니다.
onIcon / offIconString아니요켜짐과 꺼짐 아이콘입니다. 설정값입니다.
onBoolean예현재 상태이며 켜짐이 true입니다. 상호작용값입니다.

날짜와 시각 입력은 Time 위젯, 입력을 표시할 텍스트와 선택 카드는 Text 위젯에 설명합니다. 객체 카드, 리소스 선택과 액션 폼은 Platform 위젯에서 구성합니다.