在javascript中以字符串形式编写复杂代码
我正在用自己的JavaScript代码设计自定义在javascript中以字符串形式编写复杂代码,javascript,blockly,google-blockly,Javascript,Blockly,Google Blockly,我正在用自己的JavaScript代码设计自定义块块,当我试图输出为字符串的代码是一行时,这并不复杂,但当我试图将代码关联到自定义块时,通过串联变量来实现,双引号它开始变得混乱,并生成语法错误很难排除的代码 下面是一个简单块的代码,我现在的做法是: this.EnableAllItems = function (block) { var target_field = block.getField('target_field'); var code = "$('#" + targe
块
块,当我试图输出为字符串的代码是一行时,这并不复杂,但当我试图将代码关联到自定义块时,通过串联变量来实现,双引号它开始变得混乱,并生成语法错误很难排除的代码
下面是一个简单块的代码,我现在的做法是:
this.EnableAllItems = function (block) {
var target_field = block.getField('target_field');
var code = "$('#" + target_field.getText() + " option').removeAttr('disabled');\r\n";
return code;
}
这是一个用于启用选择
输入中的所有选项的块
适用于简单代码。但我希望能够做到的是按照字面意思编写JS代码,并在以后将其转换为字符串
这样的事情是否可能:
function enableItemsLogic(targetField) {
$('#' + targetField + ' option').removeAttr('disabled');
}
this.EnableAllItems = function (block) {
var target_field = block.getField('target_field');
//somehow return the above function as code with the literal parameter filled in ?
var code = enableItemsLogic(target_field.getText());
return code;
}
有什么JS技巧可以让我这么做吗 您可以为此使用模板文本(如果您传输JavaScript,这是ES5的一项功能)
在这里阅读更多信息:我找到了另一种方法,但无论如何,我肯定会对此进行研究。
const name = "Francis";
const foo = `Hello my name is: ${name}`;