我是Meteor的新手。基本上,我想更新在某种时间间隔内从集合中获取的元素(例如{{title}});比如每20秒从集合中获取下一个标题。
在ajax中,我可以轻松地构建一个带定时器的函数来从服务器端提取数据。如何在Meteor框架中实现这一目标?
我知道可以像这样声明/初始化集合
Template.mytemplate.title = function {
return Titles.find();
}
但我不打算使用#each
来循环显示所有这些内容。我计划在特定的时间间隔逐个展示它们。
请建议。
答案 0 :(得分:5)
您只需更新要在间隔中显示的数据即可。例如:
Template.myTemplate.title = function() {
return Titles.find({}, {
limit: 1,
skip: Session.get('offset'),
}).fetch();
};
Template.myTemplate.created = function() {
Session.set('offset', 0);
setInterval(function() {
Session.set('offset', Session.get('offset') + 1);
}, 20000);
};