텍스트 입력 필드는 문자열을 값으로, 문자열을 텍스트로 저장합니다. 값은 항상 유효한 문자열이지만 텍스트는 편집기에 입력된 모든 문자열일 수 있습니다.
텍스트 입력란
편집기가 열린 텍스트 입력란
접힌 블록의 텍스트 입력란
생성
JSON
{
"type": "example_textinput",
"message0": "text input: %1",
"args0": [
{
"type": "field_input",
"name": "FIELDNAME",
"text": "default text",
"spellcheck": false
}
]
}
자바스크립트
Blockly.Blocks['example_textinput'] = {
init: function() {
this.appendDummyInput()
.appendField("text input:")
.appendField(new Blockly.FieldTextInput('default text'),
'FIELDNAME');
}
};
텍스트 입력 생성자는 선택적 값과 선택적 유효성 검사기를 사용합니다. 값은 문자열로 변환되어야 합니다. null
또는 undefined
인 경우 빈 문자열이 사용됩니다.
JSON 정의를 사용하면 spellcheck 옵션도 설정할 수 있습니다.
직렬화 및 XML
JSON
텍스트 입력 필드의 JSON은 다음과 같습니다.
{
"fields": {
"FIELDNAME": "text"
}
}
여기서 FIELDNAME
는 텍스트 입력 필드를 참조하는 문자열이고 값은 필드에 적용할 값입니다. 값은 생성자 값과 동일한 규칙을 따릅니다.
XML
텍스트 입력 필드의 XML은 다음과 같습니다.
<field name="FIELDNAME">text</field>
필드의 name
속성에 텍스트 입력 필드를 참조하는 문자열이 포함되어 있고 내부 텍스트가 필드에 적용할 값인 경우 내부 텍스트 값은 생성자 값과 동일한 규칙을 따릅니다.
맞춤설정
맞춤법 검사
setSpellcheck
함수를 사용하여 필드에서 입력 텍스트의 맞춤법을 검사할지 여부를 설정할 수 있습니다.
맞춤법 검사가 있는 텍스트 입력란과 없는 텍스트 입력란
맞춤법 검사는 기본적으로 사용 설정되어 있습니다.
이는 개별 필드에 적용됩니다. 모든 필드를 수정하려면 Blockly.FieldTextInput.prototype.spellcheck_
속성을 변경하세요.
텍스트 입력 유효성 검사기 만들기
텍스트 입력 필드의 값은 문자열이므로 모든 유효성 검사기는 문자열을 허용하고 문자열, null
또는 undefined
를 반환해야 합니다.
다음은 문자열에서 모든 a
문자를 삭제하는 유효성 검사기의 예입니다.
function(newValue) {
return newValue.replace(/a/g, '');
}