我正在 Meteor 中构建一个依赖于数据库实时更新的应用程序。Meteor 列出示例的方式是将数据库调用置于模板调用之下。我发现在处理中等大小的数据集时,这变得不切实际。我正在尝试将请求移至服务器,并将结果传递回客户端。
这是我的服务器端功能:
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;
}
我已经尝试了上述代码的变体 - 作为一个示例返回回调函数。据我所知,有一个回调使函数异步,所以它不能被调用 onload(同步)并且必须从客户端调用。
我想通过服务器端的所有数据库查询来减轻前端负载。这在 Meteor 中可行吗?
谢谢