我的订阅有问题,应该在客户端使用不同的记录集填充相同的集合。 例如: 我有一本书籍收藏和两种不同的出版物:
Meteor.publish(‘books’, () => Books.find({ status: { $ne: 3 } });
当我从一条路线到另一条路线时,客户端出现问题。所有图书集都在主要组件中,当我需要时,客户端上的booksForReservation
集合不会仅使用特定的书籍集进行更新。
我订阅了客户端,如:
Meteor.subscribe(‘booksForReservation’, reservationsIds);
let books = Books.find({}).fetch();
但我仍然会显示所有图书集。当我在客户端使用服务器上使用的相同查询过滤了Books集合时,集合已更新。但是在服务器上过滤它没有任何意义。
如何使用不同的订阅更新相同的集合?
答案 0 :(得分:2)
您必须使用服务器中的查询过滤客户端上的集合。您订阅了两个出版物,因此在客户端上您将获得两个出版物的数据。服务器端的过滤收集点是安全性。通过这样做,您不会将任何不需要的数据发布到客户端。您可以在https://guide.meteor.com/data-loading.html#specific-queries
了解更多相关信息