创建新的输入类型

如需创建自定义输入,您需要创建 Input 或以下某项的子类 子类。

class MyInput extends Blockly.inputs.Input {

  // The constructor should always take in a name and a block to be compatible
  // with JSON block definitions.
  constructor(name, block) {
    super(name, block);
    // etc...
  }
}

(可选)创建连接

如果您希望输入要有连接,则应在 构造函数,只需调用 makeConnection 方法即可。

constructor(name, block) {
  super(name, block);

  this.connection = this.makeConnection(ConnectionType.INPUT_VALUE);
}

注册输入

为了能够在 JSON 块定义中使用自定义输入 您需要注册该标识符并将其与字符串关联。

class MyInput extends Blockly.inputs.Input {}

Blockly.registry.register(Blockly.registry.Type.INPUT, 'my_input', MyInput);