차단 > 차단

블록 클래스

한 블록에 대한 클래스입니다. 일반적으로 직접 호출되지는 않으며 workspace.newBlock()을 사용하는 것이 좋습니다.

서명:

export declare class Block implements IASTNodeLocation 

구현: IASTNodeLocation

생성자

생성자 수정자 설명
(생성자)(작업공간, 프로토타입 이름, 선택_ID) Block 클래스의 새 인스턴스를 생성합니다.

속성

속성 수정자 유형 설명
childBlocks_ protected 이[]
collapsed_ protected 부울
COLLAPSED_FIELD_NAME

static

readonly

문자열 접힌 필드에 지정된 언어 중립적인 ID입니다.
COLLAPSED_INPUT_NAME

static

readonly

문자열 접힌 입력에 지정된 언어 중립적인 ID입니다.
colour_ protected 문자열 '#RRGGBB' 블록 색상 형식으로 입력합니다.
작성할 수 있나요? (p1: 차단) => 무효 (선택사항) 뮤테이터 대화상자의 콘텐츠에 따라 블록을 재구성하는 선택적 함수입니다.
contextMenu 부울
데이터 문자열 | 없음 블록과 XML 간에 왕복하는 텍스트 데이터(선택사항)입니다. 효과가 없습니다. 타사에서 메타 정보용으로 사용할 수 있습니다.
분해할까? (p1: 작업공간) => 차단 (선택사항) 뮤테이터의 대화상자를 이 블록의 구성요소로 채우는 선택적 함수입니다.
파괴할까요? () => 무효 (선택사항) 폐기 시 호출되는 선택적 메서드입니다.
처분하는 protected 부울 현재 블록을 폐기하고 있나요?
domToMutation? (p1: 요소) => 무효 (선택사항) XML에서 변형 상태를 역직렬화하는 방법을 정의하기 위한 선택적 역직렬화 메서드입니다. 이는 mutationToDom 정의와 결합되어야 합니다.
getDeveloperVariables? () => 문자열[] (선택사항) 개발자 변수를 선언하기 위한 선택적 속성입니다. 생성기에서 사용할 변수 이름 목록을 반환합니다. 개발자 변수는 사용자에게 표시되지 않지만 생성된 코드에서 전역 변수로 선언됩니다.
모자? 문자열 (선택사항) 모자 유형의 이름입니다.
helpUrl 문자열 | 함수 | 없음 블록 도움말 또는 URL을 반환하는 함수의 문자열 도움이 필요한 경우 Null입니다.
아이콘 IIcon[]
id 문자열
init? () => 무효 (선택사항) 초기화 중에 호출되는 선택적 메서드입니다.
inputList 입력[]
inputsInline? 부울 (선택사항)
inputsInlineDefault? 부울 (선택사항)
isInFlyout 부울
isInMutator 부울
isInsertionMarker_ protected 부울 이 블록이 삽입 마커인 경우 true입니다.
loadExtraState? (p1: 임의) => 무효 (선택사항) JSON과 호환되는 것에서 블록의 추가 상태 (예: 변형 상태)를 역직렬화하는 방법을 정의하기 위한 선택적 직렬화 메서드입니다. 이는 saveExtraState 정의와 결합되어야 합니다.
mutationToDom? (...p1: 모든[]) => 원소 (선택사항) 변형 상태를 XML로 직렬화하는 방법을 정의하기 위한 선택적 직렬화 메서드입니다. 이는 domToMutation 정의와 결합되어야 합니다.
nextConnection 연결 | 없음
어떤 변화가 있을까요? ((p1: 추상) => void) | 없음 (선택사항) 블록의 상위 작업공간이 변경될 때마다 사용할 콜백 메서드(선택사항)입니다. 이 메서드는 일반적으로 생성자, 블록 유형 이니셜라이저 함수 또는 확장 프로그램 이니셜라이저 함수에서만 호출됩니다.
outputConnection 연결 | 없음
outputShape_ protected 숫자 | 없음
parentBlock_ protected 이 | 없음
previousConnection 연결 | 없음
렌더링된 readonly 부울 이 차단은 BlockSVG인가요?
RTL 부울
saveExtraState? (doFullSerialization?: boolean) => 모두 (선택사항) 블록의 추가 상태 (예: 변형 상태)를 JSON과 호환되는 값으로 직렬화하는 방법을 정의하는 선택적 직렬화 메서드입니다. 이는 loadExtraState 정의와 결합되어야 합니다.
styleName_ protected 문자열 블록 스타일의 이름입니다.
suppressPrefixSuffix boolean | 없음 생성된 코드에 STATEMENT_PREFIX 및 STATEMENT_SUFFIX를 추가하지 못하게 하는 선택적 속성입니다.
도움말 Tooltip.TipInfo
type 문자열
워크스페이스 Workspace

메서드

메서드 수정자 설명
addIcon(icon) 지정된 아이콘을 블록에 추가합니다.
allInputsFilled(opt_shadowBlocksAreFilled) 모든 문과 값 입력이 블록으로 채워졌는지 재귀적으로 확인합니다. 이 스택에서 다음의 모든 문 블록도 검사합니다.
appendDummyInput(name) 더미 입력 행을 추가합니다.
appendEndRowInput(name) 행을 종료하는 입력을 추가합니다.
appendInput(input)

지정된 입력 행을 추가합니다.

맞춤 입력이 블록에 추가될 수 있습니다.

appendStatementInput(name) 문 입력 행을 추가합니다.
appendValueInput(name) 값 입력 행을 추가합니다.
bumpNeighbours() 연결되지 않은 블록을 정렬에서 벗어납니다. 실제로 연결되지 않은 두 블록이 동시에 화면에 정렬되어서는 안 됩니다.
dispose(healStack) 이 블록을 삭제합니다.
disposeInternal() protected 상단 블록에서 요구하는 작업을 실행하지 않고 이 블록을 삭제합니다. 예: 이벤트를 실행하지 않거나 블록을 분리하는 등의 작업을 수행하지 않습니다.
doInit_() protected init() 함수를 호출하고 연결된 이벤트 실행 등을 처리합니다.
getChildren(ordered) 이 블록 내부에 직접 중첩된 모든 블록을 찾습니다. 값 및 문 입력과 그 뒤에 오는 문을 포함합니다. 출력 탭 또는 이전 문의 모든 연결은 제외됩니다. 블록은 위치를 기준으로 선택적으로 정렬됩니다. 살펴보겠습니다.
getColour() 블록의 색상을 구합니다.
getCommentText() 이 블록의 주석을 반환합니다 (주석이 없는 경우 null을 반환합니다).
getDescendants(ordered) 이 블록 내에 직접 또는 간접적으로 중첩된 모든 블록을 찾습니다. 목록에 이 블록을 포함합니다. 값 및 문 입력과 다음 문을 포함합니다. 출력 탭 또는 이전 문의 모든 연결은 제외됩니다. 블록은 위치를 기준으로 선택적으로 정렬됩니다. 살펴보겠습니다.
getDisabledReasons() 차단이 사용 중지된 이유(있는 경우)를 가져옵니다. 차단이 사용 설정된 경우 이 집합은 비어 있습니다.
getField(name) 블록에서 이름이 지정된 필드를 반환합니다.
getFieldValue(name) 지정된 필드의 언어 중립적 값을 반환합니다.
getHue() 블록의 HSV 색조 값을 가져옵니다. 색조가 설정되지 않은 경우 null입니다.
getIcon(type)
getIcons()
getInheritedDisabled() 부모로 인해 차단이 사용 중지되었는지 여부를 확인합니다. 블록의 자체 비활성화된 속성은 고려되지 않습니다.
getInput(name) 이름이 지정된 입력 객체를 가져옵니다.
getInputsInline() 값 입력이 가로 또는 세로로 정렬되는지 확인합니다.
getInputTargetBlock(name) 이름이 지정된 입력에 연결된 블록을 가져옵니다.
getInputWithBlock(block) 지정된 블록에 연결되는 입력을 반환합니다.
getNextBlock() 이 블록에 직접 연결된 다음 문 블록을 반환합니다.
getOutputShape() 블록의 출력 셰이프를 가져옵니다.
getParent() 상위 블록을 반환하거나 이 블록이 최상위 수준에 있는 경우 null을 반환합니다. 상위 블록은 이전 연결에 연결된 블록 (문 블록의 경우) 또는 출력 연결에 연결된 블록 (값 블록의 경우)입니다.
getPreviousBlock() 이전 연결에 연결된 블록을 반환합니다.
getRelativeToSurfaceXY() 그리기 표면의 원점(0,0)을 기준으로 이 블록의 왼쪽 상단 모서리 좌표를 반환합니다(작업공간 단위로).
getRootBlock() 이 블록의 트리에서 최상위 블록을 반환합니다. 이 블록이 최상위 수준에 있으면 자체 반환됩니다.
getStyleName() 블록 스타일의 이름을 가져옵니다.
getSurroundParent() 현재 블록을 둘러싸고 있는 상위 블록을 반환하거나, 이 블록에 주위 블록이 없는 경우 null을 반환합니다. 상위 블록은 단순히 이전 문일 수 있지만 주변 블록은 if 문, while 루프 등일 수 있습니다.
getTooltip() 이 블록에 대한 도움말 텍스트를 반환합니다.
getVars() 이 블록에서 참조하는 모든 변수를 반환합니다.
hasDisabledReason(reason) 제공된 이유로 차단이 현재 사용 중지되었는지 여부를 가져옵니다.
hasIcon(type)
initModel() 블록의 모든 필드에서 initModel을 호출합니다. 두 번 이상 호출할 수 있습니다. 블록을 생성한 후 그리고 블록과의 첫 번째 상호작용 전에 initModel 또는 initSvg를 호출해야 합니다. 상호작용에는 UI 작업 (예: 클릭 및 드래그)과 실행 이벤트 (예: 생성, 삭제, 변경)가 포함됩니다.
isCollapsed() 블록의 접힘 여부를 가져옵니다.
isDeletable() 이 블록의 삭제 가능 여부를 가져옵니다.
isDisposed() 이 블록이 삭제되었거나 삭제된 경우 를 반환합니다.
isDuplicatable() 차단의 중복 가능 여부를 가져옵니다. 이 블록과 하위 요소를 복제하는 경우 이 블록이 작업공간의 용량을 초과하게 되면 이 블록은 중복될 수 없습니다. 이 블록과 하위 요소가 maxInstances보다 우선 적용되는 경우 이 블록은 중복되지 않습니다.
isEnabled() 이 차단의 사용 설정 여부를 가져옵니다. 차단이 사용 중지될 이유가 없는 경우에는 차단이 사용 설정된 것으로 간주됩니다. 블록이 잘못된 위치에 있는 경우 등 사용자가 수동으로 차단을 사용 설정하려고 하는 경우에도 다른 이유로 차단이 사용 중지될 수 있습니다.
isInsertionMarker() 이 블록이 삽입 마커 블록인지 여부를 가져옵니다.
isOwnDeletable() 이 블록의 자체 삭제 가능 속성이 true 또는 false인지 여부를 반환합니다.
isOwnEditable() 이 블록의 수정 가능한 속성이 true 또는 false인지 여부를 반환합니다.
isShadow() 이 블록이 섀도 블록인지 여부를 가져옵니다.
jsonInit(json) 크로스 플랫폼, 국제화 친화적인 JSON 설명을 사용하여 이 블록을 초기화합니다.
mixin(mixinObj, opt_disableCheck) 믹스inObj의 키-값을 이 블록 객체에 추가합니다. 기본적으로 이 메서드는 믹스inObj의 키가 프로토타입 값을 포함하여 블록의 기존 값을 덮어쓰지 않는지 확인합니다. 이렇게 하면 향후 차단 기능과의 믹스인 / 확장 프로그램 비호환성에 대한 어느 정도의 보험료가 제공됩니다. true를 두 번째 인수로 전달하여 이 검사를 사용 중지할 수 있습니다.
moveBy(dx, dy, reason) 상대 오프셋으로 블록을 이동합니다.
moveInputBefore(name, refName) 이름이 지정된 입력을 이 블록의 다른 위치로 이동합니다.
moveNumberedInputBefore(inputIndex, refIndex) 번호가 매겨진 입력을 이 블록의 다른 위치로 이동합니다.
removeIcon(type) getType이 지정된 유형 iconType과 일치하는 아이콘을 블록에서 삭제합니다.
removeInput(name, opt_quiet) 이 블록에서 입력을 삭제합니다.
renameVarById(oldId, newId) 변수의 이름이 변경되고 있다는 알림 ID가 이 블록의 변수 중 하나와 일치하면 이름을 바꿉니다.
setCollapsed(collapsed) 블록의 접힘 여부를 설정합니다.
setColour(colour) 블록의 색상 변경
setCommentText(text) 이 블록의 주석 텍스트를 설정합니다.
setDeletable(deletable) 이 블록의 삭제 가능 여부를 설정합니다.
setDisabledReason(disabled, reason) 차단이 사용 중지되는 이유를 추가하거나 삭제합니다. 차단해야 할 이유가 있을 경우 차단 자체는 사용 중지된 것으로 간주됩니다. 차단은 사용자가 수동으로 사용 중지하거나 차단이 유효하지 않은 경우 등 여러 가지 이유로 동시에 사용 중지될 수 있습니다.
setEditable(editable) 이 블록의 수정 가능 여부를 설정합니다.
setEnabled(enabled)
setFieldValue(newValue, name) 이 블록에 대해 지정된 필드의 값을 설정합니다.
setHelpUrl(url) 이 블록의 도움말 페이지 URL을 설정합니다.
setInputsInline(newBoolean) 값 입력을 가로 또는 세로로 정렬할지 설정합니다.
setMovable(movable) 이 블록을 이동할 수 있는지 여부를 설정합니다.
setMutator(_mutator) 이 블록에 뮤테이터 대화상자를 제공합니다.
setNextStatement(newBoolean, opt_check) 다른 블록을 이 블록 하단에 연결할 수 있는지 여부를 설정합니다.
setOnChange(onchangeFn) 블록의 상위 작업공간이 변경될 때마다 사용할 콜백 함수를 설정하여 이전의 onchange 핸들러를 대체합니다. 이 메서드는 일반적으로 생성자, 블록 유형 이니셜라이저 함수 또는 확장 프로그램 이니셜라이저 함수에서만 호출됩니다.
setOutput(newBoolean, opt_check) 이 블록에서 값을 반환할지 여부를 설정합니다.
setOutputShape(outputShape) 블록의 출력 셰이프를 설정합니다.
setPreviousStatement(newBoolean, opt_check) 이 블록을 다른 블록의 하단에 연결할 수 있는지 여부를 설정합니다.
setStyle(blockStyleName) 블록의 스타일 및 색상 값을 설정합니다.
setTooltip(newTip) 이 블록에 대한 도움말을 설정합니다.
setWarningText(_text, _opt_id) 이 블록의 경고 텍스트를 설정합니다.
toDevString()

이 메서드는 이 블록을 개발자 용어로 설명하는 문자열을 반환합니다 (유형 이름 및 ID, 영어로만 제공).

콘솔 로그 및 오류에 사용됩니다. 사용자의 모국어 (블록 텍스트, 필드 값, 하위 블록 포함)를 사용하는 문자열이 필요한 경우 [toString()]을 사용합니다.

toString(opt_maxLength, opt_emptyToken) 이 블록과 모든 하위 요소를 사람이 읽을 수 있는 텍스트 표현을 만듭니다.
unplug(opt_healStack) 이 블록을 상위 블록에서 분리합니다. 이 블록이 문인 경우 아래에 있는 블록을 맨 위에 있는 블록을 선택적으로 다시 연결합니다.