我有一个应用程序,我想在其中一个集合中显示我所拥有的元素的计数器。
为此,我使用了我在HTML文件{{nbPosts}}
UI.registerHelper('nbPosts', function () {
return Posts.find().count();
});
但要显示它,我需要订阅整个Posts
集合。
对我来说似乎没有任何建议,如果不发送整个集合,可以更好地做到这一点吗?
谢谢,
答案 0 :(得分:1)
这取决于您是否需要这种方式来自动更新数据(我认为这不是最好的主意)。如果反应性不重要,您可以使用服务器方法,所以
Meteor.methods({
'nbPosts': function () {
return Posts.find().count();
},
});
如果您需要反应性,可以实施自定义publish
方法,就像在this示例中一样。请记住,这在服务器使用方面要贵得多,因此效率低得多。
答案 1 :(得分:0)
最简单的方法是拥有一个只跟踪帖子数量的集合,并在插入或删除帖子时更新它。