Чтобы создать собственный ввод, вам необходимо создать подкласс 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);