בלוקים של דוחות הם בלוקים ללא חיבורי פלט. הדברים האלה פועלים כמו הצהרות בשפות מבוססות טקסט.
בדיוק כמו כל הבלוקים ב-Blockly, אפשר להפוך בלוקים של דוחות לקודים מחרוזות באמצעות הגדרה של מחולל קוד בלוקים.
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';
}
איסוף מחרוזות ארגומנטים
לכל מחוללי הבלוקים יש צורך איסוף ערכי השדות ואיסוף הקוד של בלוקים פנימיים.
// Collect field values.
const fieldValue = block.getFieldValue('MY_FIELD');
// Collect inner block code strings.
const innerCode = generator.statementToCode(block, 'MY_STATEMENT_INPUT');
אם מפנים את הקוד של בלוק פנימי מספר פעמים, צריך להוסיף שמירת ארגומנטים לבלוק שלכם.
ערכים מוחזרים
סוג ההחזרה של מחולל קוד לבלוק הצהרה הוא מחרוזת קוד.
return 'my code string';