Ember计算属性,观察当前时间

Ben*_*Ben 6 javascript time ember.js

有没有办法让计算属性观察当前时间(用于时间戳)?

例如,在我的控制器中,我可能有一个看起来像这样的方法:

formatLastUpdated:function() {
    return moment(this.get("model.update_ts")).fromNow();
}.property("model.update_ts", "date.now?"),
Run Code Online (Sandbox Code Playgroud)

vit*_*tch 8

余烬时间库包括你正在尝试做一个很好的例子.

他们通过车把助手使用自定义视图.视图设置一个tick函数,每秒通过Ember.run.later以下方式调用:

didInsertElement: function() {
  this.tick();
},
tick: function() {
  var nextTick = Ember.run.later(this, function() {
    this.notifyPropertyChange('value');
    this.tick();
  }, 1000);
  this.set('nextTick', nextTick);
},
willDestroyElement: function() {
  var nextTick = this.get('nextTick');
  Ember.run.cancel(nextTick);
}
Run Code Online (Sandbox Code Playgroud)

notifyPropertyChange调用告诉视图该属性已更改,因此触发重新呈现...