在循环中访问外部#each 集合值的标准方法是什么?例如:
<template name="example">
{{#each outerCollection}}
<tr>
{{#each innerCollection}}
<td>{{aaa}}</td>
{{/each}}
</tr>
{{/each}}
</template>
Template.example.aaa = function(){
// cannot access outerCollection values
}
在上面的 Template.example.aaa 中,this
指向内部集合。
我找不到访问 outerCollection 项目的方法。我的解决方案如下所示,我正在定义自己的辅助函数。这是实现此目的的标准 Meteor 方式吗?
<template name="example">
{{#each outerCollection}}
<tr>
{{#each innerCollection}}
<td>{{myHelper ../outerItem innerItem}}</td>
{{/each}}
</tr>
{{/each}}
</template>
Handlebars.registerHelper('myHelper', function (outItem, inItem) {
// can access outerCollection via outerItem
});
对于内部事件处理程序访问,我发现了一个类似的问题。