Durumlar

İfade blokları, çıkış bağlantısı olmayan bloklardır. Bunlar, metin tabanlı dillerde ifadeler gibi işlev görür.

Blockly'deki tüm bloklar gibi, ifade blokları da bir blok kodu oluşturucu tanımlanarak kod dizelerine dönüştürülebilir.

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';
}

Bağımsız değişken dizelerini topla

Tüm blok kodu oluşturma araçları için alan değerlerinin toplanması ve iç blokların kodunun toplanması gerekir.

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

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

Bir iç bloğun koduna birden çok kez referans verirseniz bloğunuza bağımsız değişken önbelleğe alma eklemeniz gerekir.

Döndürülen değerler

İfade blok kodu oluşturma aracının döndürülen türü bir kod dizesidir.

return 'my code string';