Resúmenes

Los bloques de instrucciones son bloques sin conexiones de salida. Estos actúan como en lenguajes basados en texto.

Al igual que todos los bloques en Blockly, los bloques de instrucciones pueden convertirse en código. de cadenas definiendo un generador de código de bloque.

import {javascriptGenerator} from 'blockly/javascript';

javascriptGenerator.forBlock['custom_block'] = function(block, generator) {
  // Collect argument strings.
  const fieldValue = block.getFieldValue('MY_FIELD');
  const innerCode = generator.statementToCode(block, 'MY_STATEMENT_INPUT');

  // Return code.
  return 'my code string';
}

Cómo recopilar cadenas de argumentos

Todos los generadores de códigos de bloque requieren recopilar los valores de los campos y recopilar el código de bloques internos.

// Collect field values.
const fieldValue = block.getFieldValue('MY_FIELD');

// Collect inner block code strings.
const innerCode = generator.statementToCode(block, 'MY_STATEMENT_INPUT');

Si haces referencia al código de un bloque interno varias veces, deberías agregar almacenamiento en caché de argumentos a tu bloque.

Valores que se devuelven

El tipo de datos que se muestra de un generador de código de bloque de sentencias es una cadena de código.

return 'my code string';