Невозможно добавить FieldVariable в Blockly
Я пытаюсь вставить цикл foreach в мой блочный веб-интерфейс, но получаю странные сообщения об ошибках. Когда блок пытается загрузить, он показывает TypeError (TypeError: Blockly.Msg.DELETE_VARIABLE не определено [Узнать больше]). Эта ошибка исчезает, когда я убираю FieldVariable для каждого цикла. Но мне нужна какая-то переменная там. Есть ли у вас понимание того, как создать свой собственный для каждого цикла с Blockly и избежать этих ошибок.
Вот код:
Blockly.Blocks['for_each'] = {
init: function () {
this.appendValueInput("for_each_list")
.setCheck(null)
.appendField("for each item")
.appendField(new Blockly.FieldVariable('node'),
'for_each_variable')
.appendField("in list");
this.appendStatementInput("for_each_do")
.setCheck(null)
.appendField("do");
this.setOutput(true, null);
this.setColour(65);
this.setTooltip('');
this.setHelpUrl('');
}
};
Спасибо
1 ответ
Вы можете использовать блок controls_forEach: https://github.com/google/blockly/blob/master/blocks/loops.js#L191
Ваша проблема может быть в том, что у вас не загружен файл сообщений. Убедитесь, что вы также используете msg / messages.js, как это делает игровая площадка: https://github.com/google/blockly/blob/master/tests/playground.html