我想如果有人能澄清关于Meteor.js订阅的这一点:
如在docs中所写,find()函数返回需要获取的游标,而不是数据; 让我们说我有一个发布功能:
onResume
现在让我说我只需要带代码的页面:" one&#34 ;;在模板助手中,我可以获取该文档:
Meteor.publish('pages', function() {
return Pages.find()
});
问题是:这样做是否正确,或者如果我只需要一个文档,那么最好只订阅该文档? (如:
Template.mytemplate.helpers({
data: function() {
return Pages.find({code: "one"});
}
});
)
我的意思是:它在效率/性能方面有所改变吗?
答案 0 :(得分:3)
是的,确实发生了很大变化。如果您订阅整个集合,则整个集合将发送到客户端并与服务器保持同步。因此,无论如何,如果您只需要一个文档,并且不需要缓存任何其他文档(例如,用于切换到新文档),那么只能订阅您需要的文档。