字典嵌套调用测试

This commit is contained in:
Irene-Maxine
2024-10-24 22:30:13 +08:00
parent 73ba67166b
commit cf24029e6f
56 changed files with 80675 additions and 25 deletions

View File

@@ -740,4 +740,23 @@ export const json_to_dicts = {
this.setTooltip(Blockly.Msg.MIXLY_CONVERT_TO_JSON_TOOLTIP);
this.setOutput(true);
}
};
};
export const dicts_to_to ={
init:function(){
this.setColour(DICTS_HUE);
this.appendValueInput('DICT')
.setCheck('Dict');
this.appendValueInput('VAR1')
.appendField('r');
this.appendValueInput('VAR2')
.appendField('index');
this.appendValueInput('VAR3')
.appendField('l');
this.appendValueInput('VAR4')
.appendField('n');
this.setInputsInline(true)
this.setTooltip(Blockly.Msg.MIXLY_CONVERT_TO_JSON_TOOLTIP);
this.setOutput(true);
}
}

View File

@@ -203,4 +203,14 @@ export const json_to_dicts = function (_, generator) {
var varName = generator.valueToCode(this, 'VAR', generator.ORDER_ASSIGNMENT) || 'null';
var code = 'json.loads(' + varName + ')';
return [code, generator.ORDER_ATOMIC];
}
export const dicts_to_to = function (_, generator) {
var varName = generator.valueToCode(this, 'DICT', generator.ORDER_ASSIGNMENT) || '0';
var R = generator.valueToCode(this, 'VAR1', generator.ORDER_ASSIGNMENT) || 'null';
var I = generator.valueToCode(this, 'VAR2', generator.ORDER_ASSIGNMENT) || 'null';
var L = generator.valueToCode(this, 'VAR3', generator.ORDER_ASSIGNMENT) || 'null';
var N = generator.valueToCode(this, 'VAR4', generator.ORDER_ASSIGNMENT) || 'null';
var code = varName + '['+R+']'+'['+I+']'+'['+L+']'+'['+N+']';
return [code, generator.ORDER_ATOMIC];
}

View File

@@ -1185,6 +1185,33 @@
</shadow>
</value>
</block>
<block type="dicts_to_to">
<value name="DICT">
<shadow type="variables_get">
<field name="VAR">mydict</field>
</shadow>
</value>
<value name=VAR1>
<shadow type="text">
<field name="TEXT">results</field>
</shadow>
</value>
<value name=VAR2>
<shadow type="math_number">
<field name="NUM">0</field>
</shadow>
</value>
<value name=VAR3>
<shadow type="text">
<field name="TEXT">location</field>
</shadow>
</value>
<value name=VAR4>
<shadow type="text">
<field name="TEXT">name</field>
</shadow>
</value>
</block>
</category>
<category id="catSet" colour="100">
<block type="set_create_with"></block>