如何在模板文本中传递整个字典?下面是我的代码:
var pvtInPlan = treatmentPlan.pavementIDs;
var pcrAfterPlan = treatmentPlan.pavementCondition;
var yearlyPlan = {};
pvtInPlan.forEach((key, i) => yearlyPlan[key] = pcrAfterPlan[i]); // I want to pass this yearlyPlan
var arcadeExpression = `
var plan = ${yearlyPlan};
var pvtID = 100;
return plan[pvtID]`; // I want to be able to return such statement.
每当我使用'var plan = ${yearlyPlan};'行,它就会抛出错误。当我直接使用"var plan = ${yearlyPlan[100]};"时,它可以工作。但是我需要从template literal内部传递index给这个字典。
如果有人能帮我做这件事,我会很高兴。谢谢!如果您想转储整个内容,您可以执行一个简单的JSON.stringify
,例如:
const yearlyPlan = JSON.stringify({ key1: 'content', key2: 'content2' })
const arcadeExpression = `
var plan = ${yearlyPlan};
var pvtID = 100;
return plan[pvtID]`; // I want to be able to return such statement.
console.log(arcadeExpression)
>>>
"var plan = {"key1":"content","key2":"content2"};
var pvtID = 100;
return plan[pvtID]"
如果需要更自定义的版本,则需要访问每个键值对来格式化消息。