計算されたプロパティを現在時刻(タイムスタンプで使用する)を観測する方法はありますか?私のコントローラで、私はこのような何かを見ている可能性があります方法例えばEmberは現在の時刻を観測するプロパティを計算します
:
formatLastUpdated:function() {
return moment(this.get("model.update_ts")).fromNow();
}.property("model.update_ts", "date.now?"),
計算されたプロパティを現在時刻(タイムスタンプで使用する)を観測する方法はありますか?私のコントローラで、私はこのような何かを見ている可能性があります方法例えばEmberは現在の時刻を観測するプロパティを計算します
:
formatLastUpdated:function() {
return moment(this.get("model.update_ts")).fromNow();
}.property("model.update_ts", "date.now?"),
ember-timeリポジトリは、あなたがやろうとしているものの良い例が含まれています。
これらは、ハンドルバーヘルパーを介してカスタムビューを使用します。ビューはEmber.run.later
を経由して、すべてが第二と呼ばれるtick
機能を設定します:
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);
}
notifyPropertyChange
呼び出しは、あなたが何をしようとしている
は完全にスコットに同意します。つまり、グローバルプロパティを作成して1分程度で最新の時間に更新することで、時間のサブセットで作業することができます。
私はアプリケーションコントローラに保存し、他のコントローラのニーズを使用します。ここに例があります。
...プロパティが変更され、その再レンダリングトリガーたとの見方を伝えます達成するために?あなたは絶えず変化しているので、時間を観察したくない。これを行うことが可能だった場合、あなたのjavascriptはそのプロパティを更新するだけの連続ループで立ち往生し、何か他のことをするのに十分な時間(意図しない)はありません。私はあなたが望む結果が何であるかを説明すれば、よりよい方法があると思います。 – Scott
ええ、ちょうど私のlasが現在の状態を維持するために相対的な(moment.jsを使用して)更新されたタイムスタンプを探しています。私はキングピンの答えを試してみましょう – Ben