以块状读取用户输入的输入

时间:2018-08-02 14:55:36

标签: blockly google-blockly

我的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 个答案:

答案 0 :(得分:1)

简短答案:

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

(顺便说一句,您似乎已将字段命名为“ TYPE”-完全确定要使用它来命名吗?)

中等答案:包括以上内容,并通过获取工作空间并使用以下命令为工作空间生成JavaScript:

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

在任何试图生成JavaScript的地方。

长的答案是,如果这还不足以使您入门,那么我将需要更多地了解您如何尝试生成代码以及如何使用它。< / p>

如果您尚未签出这些链接,这些链接也可能会有所帮助: https://developers.google.com/blockly/guides/configure/web/custom-blocks#add_generator_function https://developers.google.com/blockly/guides/create-custom-blocks/generating-code