使用小胡子works like this创建列表:
const Mustache = require('mustache');
let template = `
{{#repo}}
<b>{{name}}</b>
{{/repo}}
`
let context={
repo:[
{name: "John"},
{name: "Lisa"},
{name: "Darth Vader"}
]
}
console.log(Mustache.render(template, context))
它创建:
<b>John</b>
<b>Lisa</b>
<b>Darth Vader</b>
我的问题是:我想直接处理字符串列表。 但这似乎与小胡子不兼容。如果它不是对象列表,那么我在模板中没有要使用的名称:
// my data is just a list of strings
let my_data = ["a", "b", "c", "d"]
// to make it compatible with Mustache, it has to become a list of objects
let mustache_version=[{el: "a"}, {el: "b"}, {el: "c"}, {el: "d"}]
是否可以使用Mustache处理字符串数组?
请注意:我并不是在问如何将数组转换为兼容格式。相反,我想按原样将其喂入Moustache。
答案 0 :(得分:2)
当遍历字符串数组时,一个。可用于引用列表中的当前项目。 查看:
{ "musketeers": ["Athos", "Aramis", "Porthos", "D'Artagnan"] }
模板:
{#musketeers}} * {{.}} {{/musketeers}}
因此,在您的情况下,您只需要编写:
{{#repo}}
<b>{{.}}</b>
{{/repo}}