如果我有订阅

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/

10-09 22:18