Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在块中一起工作多个块_Javascript_Html_Blockly - Fatal编程技术网

Javascript 在块中一起工作多个块

Javascript 在块中一起工作多个块,javascript,html,blockly,Javascript,Html,Blockly,我有问题使用块 每当我尝试使用两个块时,只会在稍后执行,而不会一起执行以获得所需的输出 在这里,我使用了两个块名移动和旋转,我需要,但块应该一起工作,但它不会发生,而是一次只发生一个块效果 **custom_morph.js** Blockly.Blocks['Steps']={ init:function(){ 这个.appendDummyInput().appendField(“移动”).appendField(新的Blockly.FieldNumber(0),“步骤”).appendFi

我有问题使用块

每当我尝试使用两个块时,只会在稍后执行,而不会一起执行以获得所需的输出

在这里,我使用了两个块名移动和旋转,我需要,但块应该一起工作,但它不会发生,而是一次只发生一个块效果

**custom_morph.js**
Blockly.Blocks['Steps']={
init:function(){
这个.appendDummyInput().appendField(“移动”).appendField(新的Blockly.FieldNumber(0),“步骤”).appendField(“步骤”);
此.setInputsLine(false);
此.setPrevious语句(!0);
此.setNextStatement(!0);
这是一种颜色(230);
此.setTooltip(“”);
此.setHelpUrl(“”);
}
};
var距离=0;
JavaScript['Steps']=函数(block){
//TODO:将JavaScript组装到代码变量中。
var step=block.getFieldValue('steps');
距离+=数量(步);
var code=document.getElementById('goofy').style.transform='translateX('+distance+'px');
返回码;
};
块状。块状['xrotate']={
init:function(){
此.appendValueInput(“角度”)
.setCheck(空)
.setAlign(块状.右对齐)
.appendField(新的块式.FieldDropdown([“顺时针”、“C”]、[“逆时针”、“A”])、“R_角”)
.appendField(新的块状FIELDANGE(90),“角度”)
.appendField(“学位”);
此.setPrevious语句(!0);
此.setNextStatement(!0);
这是一种颜色(150);
此.setTooltip(“”);
此.setHelpUrl(“”);
}
};
var度=0;
JavaScript['xrotate']=函数(block){
var下拉列表_r_角度=block.getFieldValue('r_角度');
var angle_angle=block.getFieldValue(“角度”);
度+=数量(角度);
var value_angle=Blockly.JavaScript.valueToCode(block'angle',Blockly.JavaScript.ORDER_原子);
//TODO:将JavaScript组装到代码变量中。
如果(下拉菜单\u r\u角度=='C'){
代码=document.getElementById('goofy').style.transform='rotate('+degree+'deg');
}
否则{
code=document.getElementById('goofy').style.transform='rotate(+''-'+degree++'deg');
}
返回码;
};

在Blockly中使用Jquery
/*{
显示:内联块;
}*/
.transmove{
边框:1px纯灰;
高度:480px;
宽度:500px;
溢出:自动;
}
#傻瓜{
填充:100px;
宽度:150px;
高度:150像素;
}
#代码块{
边框:1px纯灰;
}
运行Javascript

var workspace=Blockly.inject('blocklyDiv'{ 工具箱:document.getElementById('toolbox') }); 函数runcode(){ var code=Blockly.JavaScript.workspaceToCode(workspace); document.getElementById('goofy')。值=代码; }
您可能需要使用并行/事件驱动程序来解决此问题。