templates - Mustache section values are overridden -
how output:
<h1>colors</h1> <li><strong>red</strong></li> <li><a href="#green">green</a></li> <li><a href="#blue">blue</a></li> from template:
<h1>{{header}}</h1> {{#bug}} {{/bug}} {{#items}} {{#first}} <li><strong>{{name}}</strong></li> {{/first}} {{#link}} <li><a href="{{url}}">{{name}}</a></li> {{/link}} {{/items}} {{#empty}} <p>the list empty.</p> {{/empty}} this data:
{ "header": "colors", "first": true, "items": [ {"name": "red", "first": true, "url": "#red"}, {"name": "green", "link": true, "url": "#green"}, {"name": "blue", "link": true, "url": "#blue"} ], "empty": false } so first field not overridden.
currently output:
<h1>colors</h1> <li><strong>red</strong></li> <li><strong>green</strong></li> <li><a href="#green">green</a></li> <li><strong>blue</strong></li> <li><a href="#blue">blue</a></li> i'm testing here.
the first key defined @ 2 levels: @ item level, , @ root level.
when not defined @ item level, mustache engines digs in, , uses 1 defined @ root level. called mustache context stack, , have learnt hard way.
now answer simple, insn't it? in order prevent mustache engine dig in context stack , first @ root level, make sure first defined @ item level, all items. set false items first.
Comments
Post a Comment