小编典典

如何定期更新Ember模型(例如在setInterval中)?

ajax

我有一个Ember应用程序,其模型来自Ajax调用。第一次调用的效果很好,我具有Ember.Route向Ajax调用返回承诺的模型钩子,该调用检索要显示的数据。

但是此数据在后端经常更改,因此我想让Webapp定期(例如每5秒一次)轮询服务器,并更新或什至更好地将模型数据与新检索的数据完全交换。

使用Ember.js的合适方法是什么?我是Ember的新手,所以对此有点迷惑。


阅读 295

收藏
2020-07-26

共1个答案

小编典典

我认为这是一个很好的用例Ember.run.later,它限制了函数调用的频率。

您可以向模型添加刷新,类似于以下内容:

App.Model = DS.Model.extend({
   poll: function() {
      var _this = this;
      Ember.run.later( function() {
         _this.reload(); 
         _this.poll();
      }, 500);
   }.observes('didLoad'),
});
2020-07-26