订阅已发布的收藏集时,何时可以传递论点?

我正在这样发布我的收藏:

Meteor.publish('recent-posts', function (options) {
  var limit = options.limit;
  return Posts.find({}, {sort: {date: -1}, limit: limit});
});


在我的路由文件中,我可以像这样将{limit: 5}作为options传递,并且可以正常工作:

...
waitOn: function () {
  return Meteor.subscribe('recent-flights', {limit: 5});
}
...


令我困惑的是,这也行得通:

...
waitOn: function () {
  return Meteor.subscribe('recent-posts', {date: this.params.date});
}
...


第二个示例使我订阅了具有特定日期值的所有帖子。

为什么行得通?好像我要通过{date: this.params.date}作为options。但是我没有在date中定义有关Meteor.publish的任何内容。

最佳答案

至少据我从源代码可以看出,Meteor中的任何内容都不会导致这种行为。我还在“干净”的流星实例中测试了您的示例。它的行为不符合您的描述。因此,一定要在您的代码中执行此操作。也可能是您没有正确描述问题。

我还注意到您在示例中使用了两个不同的订阅; recent-postsrecent-flights。因此,这可能是您感到困惑的根源。

10-05 20:55
查看更多