基本上在运行时我得到一个像下面这样的数组
var colors = ['red', 'green', 'blue'];
Run Code Online (Sandbox Code Playgroud)
我需要像下面这样构建一个JSON字符串
{
"color" : {
"name" : "foo",
"properties" : {
...
}
},
"green" : {
"name" : "foo",
"properties" : {
...
}
},
"blue" : {
"name" : "foo",
"properties" : {
...
}
}
}
Run Code Online (Sandbox Code Playgroud)
是否有任何String模板框架支持循环和控制语句来构建如上所述的JSON字符串
您可以尝试使用Nunjucks套餐.它支持javascript和npm库.模板可以声明为follow(将其命名为colors.template):
{
{% for color in colors %}
"{{ color }}" : {
hashCode : "#CCC"
}
{% else %}
{% endfor %}
}
Run Code Online (Sandbox Code Playgroud)
您可以按如下方式解析json模板:
var nunjucks = require('nunjucks');
nunjucks.configure({ autoescape: true });
var output = nunjucks.render('colors.template', {colors : ['red', 'green', 'blue'] });
Run Code Online (Sandbox Code Playgroud)