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

标签 javascript jquery ajax web-applications ember.js

我有一个 Ember 应用程序,其模型来自 Ajax 调用。第一个调用效果很好,我让 Ember.Route 的模型钩子(Hook)向检索要显示的数据的 Ajax 调用返回一个 promise 。

但是这些数据在后端经常发生变化,我想让网络应用程序定期轮询服务器,例如每 5 秒一次,并更新,或者更好的是,将模型数据完全与新检索到的数据交换。

使用 Ember.js 执行此操作的正确方法是什么?我是 Ember 新手,所以我对此有点迷失。

最佳答案

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

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

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

关于javascript - 如何定期更新Ember的模型(例如在setInterval中)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21708931/

相关文章:

javascript - 如何删除路径在实时数据库中的文件?

javascript - HTML5 Canvas + JS 不适用于 IOS/Safari

javascript - 如何在 JavaScript 中检查变量是否为 null 和/或未定义

jquery - History.pushState 在浏览器后退按钮上中断

javascript - 两个 javascript 相互冲突

javascript - 更改字体颜色 onclick 单选按钮

javascript - 如何将数据从 POST 请求传递到对外部服务的请求?

ruby-on-rails - 带有 Rails 的 AJAX 设计表单不更新数据

javascript - Highcharts 列 - 固定边框宽度,删除条形之间的间距

javascript - 如何使用 JQuery 清空克隆输入?