基于区间的流星更新模板元素

Hai*_*uha 3 mongodb node.js meteor

我是Meteor的新手.基本上,我想更新在某种时间间隔内从集合中获取的元素(例如{{title}}); 比如每20秒从集合中获取下一个标题.

在ajax中,我可以轻松地使用计时器构建一个函数来从服务器端提取数据.如何在Meteor框架中实现这一目标?

我知道可以像这样声明/初始化集合

Template.mytemplate.title = function {
  return Titles.find();
}
Run Code Online (Sandbox Code Playgroud)

但我不打算使用#each循环显示所有这些.我打算在特定的时间间隔内逐一展示它们.

请指教.

Hub*_* OG 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);
};
Run Code Online (Sandbox Code Playgroud)

  • @HubertOG @KubaWyrobek我发现了!应该使用`skip`而不是`offset`.休伯特,请更正它,以便我可以将其标记为答案. (2认同)