// Snippet from Template
<div class="post-container">
{{#each elements}}
{{> post-element this}}
{{/each}}
</div>
// Snippet from Client
Meteor.subscribe('thePosts');
// Snippet from Server
Meteor.publish('thePosts', function(){
return Posts.find({}, {sort:{createdAt:-1}, reactive:true});
});
当我做...
Posts.insert({body:postBody, createdAt: new Date()});
发布文档被添加并显示在我的列表的末尾,而不是我的发布函数中指定的降序。知道我做错了什么吗?
Thanks!
发布功能确定哪些记录应同步到任何订阅客户端的 mini-mongo 数据库。因此,在发布函数中对数据进行排序实际上对客户端没有影响,因为客户端数据库可能会以其他方式存储它们。
当然,您可能想在发布者中使用排序find
为了将记录数量限制为最近的 N 个 - 但这只是决定同步哪些记录而不是客户端如何存储/使用它们的一种方法。
将记录同步到客户端后,将由模板代码决定如何显示结果。例如:
Template.myTemplate.elements = function() {
return Posts.find({}, {sort: {createdAt:-1}});
}
另请参阅我的帖子的“排序发布”部分常见错误 http://dweldon.silvrback.com/common-mistakes.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)