我一直在努力解决Meteor +铁路由器中的以下问题:
我有一个订阅mongo集合的页面(路线)
在那个页面上,我有一些逻辑依赖于游标查询集合,还使用了observeChanges处理程序(即我正在对该集合运行搜索)
在这种情况下的问题是在整个路线更改过程中,客户端会保留集合,这会导致2个不必要的影响:
1)在该路线之外不一定需要该集合,这意味着我浪费了客户端RAM(该集合,甚至其中的一部分,可能非常大)
2)每当我回到那条路线时,我想从一个空子集开始,以便observeChanges处理程序正常工作。
有关如何清除镜像集合的任何建议? (使用Collection._collection.remove({})hack是不好的做法,甚至没有解决问题)
谢谢!
答案 0 :(得分:1)
通过存储订阅句柄解决了这个问题。用它们取消订阅template.destroyed()上的数据(即subscription_handle.stop())