我试图细分为一个名为items的集合,但每次我尝试使用限制或跳过来细分时,它都会返回整个集合,因为它认为参数是未定义的。例如,我正在尝试呈现集合中的1个项目:
Meteor.subscribe("items", 1, 0);// 1 item, 0 skip
Tracker.autorun(() => {
console.log(items.find({}).fetch());
})当我这样做时,整个集合都会被打印出来。在服务器中,当我打印出版物的参数时:
Meteor.publish("items", (l, s) => {
console.log(l, s);
// returns: undefined undefined
// 1 0
return items.find({}, {limit: l, skip: s});
})在客户端,我会呈现所有文档,而不仅仅是一个文档。我是不是遗漏了什么或者做错了什么?
发布于 2018-04-16 15:32:24
很可能您仍然安装了autopublish包,它会自动发布和订阅您的整个收藏。
因此,看起来您已经到了应该删除该包的步骤(meteor remove autopublish)。
此外,在您的客户端上,请确保还过滤了您的集合上的查询,否则您可能会被并行订阅污染,这些并行订阅会将数据填充到同一集合中,例如使用autopublish。
另请参阅:
https://stackoverflow.com/questions/49849545
复制相似问题