產生程式碼是將工作區區塊轉換成 程式碼字串。
程式碼生成極為重要,因為這樣可讓區塊 實際「操作」的方法,例如評估算術運算式、移動字元 或是架設線上商店!
Blockly 不「執行」直接封鎖相反地,您可以產生程式碼字串 然後加以執行
程式碼產生器
如要產生程式碼,請使用程式碼產生器例項。
這個程式碼片段說明如何產生 JavaScript 程式碼,以用於 工作區:
// javascriptGenerator is a code generator that makes JavaScript strings.
import {javascriptGenerator} from 'blockly/javascript';
const code = javascriptGenerator.workspaceToCode(myWorkspace);
進一步瞭解 Blockly 提供的不同程式碼產生器 以及使用方式,請參閱「程式碼產生器總覽」。
區塊程式碼產生器
每個區塊都有相關聯的區塊程式碼產生器,可定義要使用的程式碼 產生的結果。必須為每個語言定義區塊程式碼產生器 想要產生的報表
這段程式碼定義了執行「move」動作的 JavaScript 區塊程式碼產生器 轉寄」區塊:
javascriptGenerator.forBlock['my_custom_block'] = function(block, generator) {
const steps = block.getFieldValue('FIELD_NAME');
// moveForward is a function you would have to define yourself and provide
// within your execution context.
return `moveForward(${steps});\n`;
}
如要進一步瞭解如何定義區塊程式碼產生器,請參閱 區塊程式碼產生器。
執行
產生程式碼後,您需要瞭解執行方式。 決定執行方式的方法會因應用程式而異,而且不在範圍之內 方塊
如要進一步瞭解執行程式碼的方式,請參閱 程式碼執行。