我正在使用Blaze和Meteor。 我有announcements_list.html
<template name="AnnouncementsList">
<div class="announcements">
<ul class="collection">
{{ #each announcements }}
{{ >announcementItem }}
{{ /each }}
</ul>
</div>
</template>
并宣布_list.js
Template.AnnouncementsList.helpers({
announcements: function() {
return Announcements.find({}, {sort: {createdAt: -1}});
}
});
如果我删除{{each}}循环,我可以阅读{{&gt; announcementItem}}。所以我认为问题在于帮助器中的功能。请帮帮我=。= ...
答案 0 :(得分:1)
您的公告数据库中是否有announcementItem,或者您是否尝试从模板访问数据?如果是前者,你的火焰呼叫应该是{{announcementItem}}。在#each,#unless或#with中,不需要箭头。
答案 1 :(得分:0)
您正在为announcements
中的每个项目呈现相同的模板。这个模板从哪里获取数据?我会做这样的事情:
<template name="AnnouncementsList">
<div class="announcements">
<ul class="collection">
{{#each item in announcements}}
{{> announcementItem item}}
{{/each }}
</ul>
</div>
</template>
然后,item
到
announcementItem
对象
Template.instance().data
this.data
位于onCreated
和onRendered
。