בלוקים פנימיים

בלוקים פנימיים הם הבלוקים שמצורפים לערך ולקלט של ההצהרה. מחוללי בלוקים ספציפיים צריכים לטפל בשרשור של בלוקים כדי שהקוד יתווסף במקום הנכון.

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`;

קוד החזרה

סוגים שונים של בלוקים מחייבים החזרה של מחרוזת קוד לכן כדאי לבדוק את הדפים הנפרדים שלהם לקבלת מידע נוסף: