如果我有订阅
Meteor.publish('itemsByProjectId', function (projectId) {
check(projectId, String);
return Items.find({ projectId: projectId});
});
那么我只订阅与该项目相关的项目。
在模板中输出项目时我还必须使用
Items.find({ projectId: projectId })
还是使用Items.find()
足够,因为该集合已经通过订阅进行了过滤。在这种情况下最佳做法是什么?我认为不需要再次过滤数据。
最佳答案
这取决于您是否已将Items集合中的任何其他文档发送给客户端。如果您已使用Subs Manager将过去的子项缓存到items集合中,或者正在使用另一个对Items集合的订阅,那么您希望在客户端中更具体地找到模板帮助器。但是,如果您确定此时将在客户端上显示项目集合的唯一文档是具有正确projectId的文档,那么可以使用不带选择器的查找就可以了。
关于javascript - 筛选已通过订阅在Meteor中筛选的数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32203927/