meteor客户端同步服务器数据库调用

我正在Meteorbuild立一个依赖数据库实时更新的应用程序。 Meteor展示这些示例的方式是在Template调用下进行数据库调用。 我发现,处理中等大小的数据集时,这变得不切实际。 我正在尝试将请求移动到服务器,并将结果传回客户端。

我曾经看过类似的 SA 问题 ,但没有find直接的答案。

这是我的服务器端function:

Meteor.methods({ "getTest" : function() { var res = Data.find({}, { sort : { time : -1 }, limit : 10 }); var r = res.fetch(); return (r); } }); 

和客户端:

  Template.matches._matches = function() { var res= {}; Meteor.call("getTest", function (error, result) { res = result; }); return res; } 

我已经尝试过上述代码的变体 – 在callback函数中返回一个例子。 据我所知,有一个callback使该functionasynchronous,所以它不能被称为onload(同步),并必须从客户端调用。

我想通过所有的数据库查询服务器端来减轻前端负载。 这在meteor中可能吗?

谢谢

这样做的方法是使用订阅,而不是远程方法调用。 查看文档中counts-by-room示例 。 因此,对于每个数据库调用,您都有一个仅存在于客户端的集合。 服务器然后使用setunset决定集合中的logging。