只是想知道是否有办法设置我的meteor订阅只从mongo集合加载新文档,避免同步删除和更新(因为它们与显示给用户的数据无关)。
为什么我需要那个?在离线期间我似乎随时都会Meteor.subscribe
,所以WHOLE集合会再次从服务器发送到客户端,而我只需要新的记录。
我认为这可以保持本地/远程数据库的完整性,但由于我的应用程序计划在线/离线工作(我还使用了groundDB),在我看来,在数据使用方面效率非常低。
提前致谢。
答案 0 :(得分:1)
您可以创建仅发送新文档的发布。像:
Meteor.publish('newDocumentsOnly', () => {
let initializing = true;
const handle = Collection.find().observeChanges({
added: (id, fields) => {
if (initializing) return;
this.added('Collection', id, fields);
}
});
initializing = false;
this.ready();
this.onStop(() => {
handle.stop();
});
});