基本用法:
html
var html = Mustache.to_html(template, data); $('#content').html(html)
总结一句话,若是传入的data是个数组,用点表示这个无名的数组。
而{{#blah}} ... {{/blah}}是被重载过的,碰到数组就会遍历,碰到对象就会进去。
##带key的 json
The array itself should be a value in a bigger Object, like so: 数组
var obj = { arr: [ {"id": "1", "details": {"name": "X", "type":"Y" }}, {"id": "2", "details": {"name": "aName", "type":"something" }} ] }
Then you can do: less
{{#arr}} my id: {{id}} {{/arr}}
the use for {{#bla}} is actually overloaded. When the property it acts upon is an array it will loop. When the property is an object itself it will 'enter' that object. Given your example: oop
{{#arr}} my id: {{id}} <br/> {{#details}} and my name: {{name}} {{/details}} {{/arr}}
##keyless不带key的(使用.语法) this
I found another way of doing this which is pretty similar to Geert-Jan except that you do not have to assign the array to a Javascript object. spa
{{ #. }} <p> {{ id }} </p> <ul> {{#details}} {{name }} {{ type }} {{/details}} </ul> {{ /. }}