我使用子管理器,但对此的答案可能与该库无关。
我订阅了一个limit
参数。目前,当我拨打subs.subscribe 'subname', newLimit
时,会添加另一个订阅。
旧的订阅仍在那里。我不希望Meteor花时间维护旧的,下限订阅。我想要更新旧订阅的参数,而不是添加新订阅。做这个的最好方式是什么?
请注意,在订阅'subname', 20
之前,我也不想完全删除'subname', 40
,因为我不希望Meteor做重新发送第一个的额外工作20个文档 - 我希望它只发送文档21 - 40。
答案 0 :(得分:2)
您可以查看订阅的stop()
方法。根据{{3}}:
stop()
[取消]订阅。这通常会导致服务器指示客户端从客户端的缓存中删除订阅的数据。
所以我看到它的方式,你可以设法做到:
// globals or whatever
var previousSub, newSub;
// somewhere else
newSub = Meteor.subscribe('subname', newLimit, function () {
if (previousSub)
previousSub.stop();
previousSub = newSub;
});