בלוקים פנימיים הם הבלוקים שמצורפים לערך ולקלט של ההצהרה. מחוללי בלוקים ספציפיים צריכים לטפל בשרשור של בלוקים כדי שהקוד יתווסף במקום הנכון.
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
הפעולה הזו קוראת ל-
מחולל הבלוקים של בלוק תאריך (state) ונקודות אחיזה
כניסת קוד.
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`;
קוד החזרה
סוגים שונים של בלוקים מחייבים החזרה של מחרוזת קוד לכן כדאי לבדוק את הדפים הנפרדים שלהם לקבלת מידע נוסף: