내부 블록

내부 블록은 값 및 문 입력에 연결된 블록입니다. 개별 블록 코드 생성기는 코드가 올바른 위치에 추가되도록 합니다.

import {javascriptGenerator, Order} from 'blockly/javascript';

javascriptGenerator.forBlock['my_custom_block'] = function(block, generator) {
  // Generate innner block code.
  const statement = generator.statementToCode(block, 'MY_STATEMENT_INPUT');
  const value = generator.valueToCode(block, 'MY_VALUE_INPUT', Order.ATOMIC);

  // Concatenate the string.
  const code = `some code ${statement} ${value} some more code`;

  // Return the code.
  return code;
}

문 입력

명령문 입력에 연결된 내부 블록의 코드는 statementToCode 이를 문 블록의 블록 코드 생성기와 코드를 들여쓰기해야 합니다.

const statement = generator.statementToCode(block, 'MY_STATEMENT_INPUT');

직접 연결된 내부 블록에 관해서만 statementToCode를 호출하면 됩니다. 명령문 입력에 추가합니다

값 입력

값 입력에 연결된 내부 블록의 코드는 valueTocode 이를 값 블록의 블록 코드 코드 생성기와 내부 블록 주위에 괄호 추가 필요에 따라 코드를 수정할 수도 있습니다

자세한 방법은 괄호 문서를 참조하세요. 사용하여 괄호를 제어합니다.

const value = generator.valueToCode(block, 'MY_VALUE_INPUT', Order.ATOMIC);

코드 연결

내부 블록의 코드 문자열을 가져온 후에는 코드 문자열로 올바른 장소를 바꿉니다.

const code = `some code ${statement} ${value} some more code`;

반환 코드

블록 유형에 따라 코드 문자열이 다른 블록 유형으로 반환되어야 합니다. 자세한 내용은 각 사이트의 개별 페이지를 확인하세요.