【发布时间】:2015-09-01 21:44:35
【问题描述】:
这就是我们想要实现的,我们需要每五分钟调用一次 API 并在流星中刷新一个页面,我们不希望使用 MongoDB;所以 API 调用是在模板渲染和输出显示之前直接进行的。
下面是代码 sn-p - 我每 5 分钟调用一次 API,并在模板渲染期间将其设置在会话变量中
Template.list.rendered = function(){
Meteor.setInterval(function(){
Meteor.call('getListFromAPI', function(error,data){
if(error){
console.log(error);
}
else{
Session.set('availableList', data);
}
});
}, 60000);
}
这里是返回“availableList”到HTML进行渲染的辅助函数-
Template.list.helpers({
'getList': function(){
return Session.get('availableList');
}
});
问题: 它按原样工作,意味着页面每五分钟刷新一次,但问题是当页面第一次加载时,它会在渲染前等待五分钟。
我对 Meteor 还很陌生,有没有其他更好的方法我尝试将会话变量移动到服务器,但服务器端不支持会话。 我可以理解反应源“会话 - 可用列表”应该从渲染函数中移出,但我不确定使用什么方法。
如果您有任何问题,请告诉我。
【问题讨论】:
标签: meteor