如何观察属性并在重新加载时清除它们

时间:2013-07-24 04:18:37

标签: javascript ember.js handlebars.js ember-data

我正在使用此

每4秒为视图重新加载一次数据
var App = Ember.Application.create({
    ready: function() {
        setInterval(function() {
            App.Quotes.find().reload
        }, 4000);
    }
});

我在这个视图中提取了这个值:

    <blockquote>
    {{#each model}}
        <p>{{message}}</p>
    {{/each}}
    </blockquote>

问题

每隔4秒向REST API发出一个新请求以获取新报价。但是,新报价会附加到现有报价中。如何覆盖旧引号并仅显示新的,已更改的值?

1 个答案:

答案 0 :(得分:0)

请参阅Ember model reloading in interval并可能进行细微更改:

didLoad: function(){
  var self = this;
  setInterval(function() {
    self.clear(); // <- this clears out the existing record
    self.reload();
  }, 4000);
}

我在Ember.Application对象而不是数组控制器中执行此操作有点奇怪。有没有理由这样做?