2017-07-06 86 views
0

范围:MustacheJS - 通过属性访问值作为索引

let bases = [{id: "51667c34ed4dd", name: "CAYENNE", sort: 1}, {id: "516682b6a160e", name: "FORT DE FRANCE", sort: 2}, {id: "516682c230fbb", name: "POINT A PITRE", sort: 3}]; 
let filters = {bases: {51667c34ed4dd: true, 516682b6a160e: false, 516682c230fbb: true}, aircrafts: {}}; 
let set = {bases, filters}; 

模板:

{{#bases}} 
    <input type="checkbox" class="base_checkbox" value="1" id="{{id}}" name="{{name}}" {{(if checked)}}checked="checked"{{/(if checked)}}> 
{{/bases}} 

用法:

Mustache.render(template, set); 

{{#bases}}循环,如何访问另一个外部物体值以当前范围属性为关键?

like {{filters.bases {{id}}}}其中{{id}}是循环中当前对象的属性。

回答

0

解决了与:

bases.forEach(b => { 
    b.checked =() => { 
     return filters["bases"][b.id]; 
    } 
}); 

髭使用该函数返回值作为变量。