Чтение введенного пользователем ввода в блочный блок

У меня есть код ниже в моем файле blockly.js

Blockly.Blocks['account_number'] = {
  // Other type.
  init: function() {
    this.jsonInit({
      "message0": "account_number %1",
      "args0": [{"type": "field_input", "name": "TYPE", "text": ""}],
      "output": "Type",
      "colour": 320,
      "tooltip": "Custom type to allow.",
      "helpUrl": "https://www.youtube.com/watch?v=s2_xaEvcVI0#t=702"
    });
  }
};

Я использую это в моем index.html следующим образом

<category name="sender" colour="%{BKY_MATH_HUE}">
    <block type="account_number" name="accnum"></block>
</category>

Как я могу получить введенный пользователем номер в блоке номера счета в этом js-файле?

1 ответ

Краткий ответ:

Blockly.JavaScript['account_number'] = function(block) {
    var code = block.getFieldValue('TYPE');
    return code;
}

(Между прочим, вы назвали свое поле "ТИП" - вы полностью уверены, что хотите его назвать?)

Средний ответ: включите вышесказанное и создайте JavaScript для своего рабочего пространства, получив рабочее пространство и используя:

var generatedCode = Blockly.JavaScript.workspaceToCode(workspace);

там, где вы пытаетесь создать свой JavaScript.

Длинный ответ таков: если этого недостаточно, чтобы начать, мне нужно больше узнать о том, как вы пытаетесь сгенерировать свой код и что вы собираетесь с ним делать.

Эти ссылки также могут быть полезны, если вы еще не проверили их: https://developers.google.com/blockly/guides/configure/web/custom-blocks https://developers.google.com/ блокли / направляющие / Create-таможенно-блоки / генерации кода

Другие вопросы по тегам