Anweisungsblöcke sind Blöcke ohne Ausgabeverbindungen. Sie verhalten sich wie Aussagen in textbasierten Sprachen.
Genau wie alle Blöcke in Blockly können Anweisungsblöcke durch Definieren eines Block-Code-Generators in Codestrings umgewandelt werden.
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';
}
Argumentstrings erfassen
Alle Blockcodegeneratoren erfordern das Sammeln der Feldwerte und das Erfassen des Codes der inneren Blöcke.
// Collect field values.
const fieldValue = block.getFieldValue('MY_FIELD');
// Collect inner block code strings.
const innerCode = generator.statementToCode(block, 'MY_STATEMENT_INPUT');
Wenn Sie mehrmals auf den Code eines inneren Blocks verweisen, sollten Sie dem Block Argument-Caching hinzufügen.
Rückgabewerte
Der Rückgabetyp eines Anweisungs-Blockcode-Generators ist eine Codezeichenfolge.
return 'my code string';