【发布时间】:2016-03-02 18:59:04
【问题描述】:
因此,如果我有一个模板并且我为该模板定义了一些帮助程序,我可以在模板中正常使用它们,但是如果我尝试在 {{#each whatever}} 中使用它们,它会给我一个错误。看这个例子:
{{#unless pollIsOpenHelper}}
<p>This poll closed on {{formatDate time_poll_closed}}.</p>
{{/unless}}
<table>
{{ #each indexedArray choices }}
<tr>
<td><span class="votes">{{ votes }}</span></td>
<td><span class="text">{{ text }}</span></td>
<td><a href="#" class="vote" data-id="{{ _index }}"><button>Vote for this option</button></a></td>
</tr>
{{#unless pollIsOpenHelper}}
<p>CLOSED.</p>
{{/unless}}
{{ /each }}
</table>
{{#unless}} 中的上述帮助程序完美运行,仅在投票关闭时显示消息。但是,如果我尝试在下面的 {{#each}} 中显示一条消息,则帮助程序不起作用并始终向我显示消息。控制台给我:Exception in template helper: TypeError: Cannot read property 'poll_is_open' of undefined
编辑:这是帮助代码:
Template.poll.helpers({
pollIsOpenHelper: function() {
var poll_is_open = Polls.findOne({_id: this._id}).poll_is_open;
return poll_is_open;
},
});
【问题讨论】:
-
context changes 内部的
#each。没有帮助代码就无法给出准确的答案。 -
我已经添加了帮助代码