ループ内で外側の #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
});
内部イベント ハンドラー アクセスの場合についても、同様の質問が見つかりました。