"angular2-moment": "^1.3.3",
"moment": "^2.18.1",
當我在模板中使用amTimeAgo
管:
<div *ngFor="let issue of getIssues() | async ">
{{ issue.time | amTimeAgo }}
<!--{{ issue.time | amUtc }}-->
<!--{{ issue.time | amLocal }}-->
<p>{{ issue.time | amDateFormat:'dddd, MMMM Do YYYY, h:mm:ss a' }}</p>
{{ issue.time }}
{{issue | json }}
</div>
,可觀察:
getIssues(): Observable<any[]> {
return Observable.of([
{
name: "1",
time: new Date(),
},
{
name: "2",
time: new Date(),
},
{
name: "2",
time: new Date(),
}
]);
}
常數被刷新每秒(每次新的新日期())。
如何預防?
爲什麼每次都得到新數據?
我不希望每次都有新的數據。另外,這將是一個HTTP調用,因此很昂貴。
我想改變偵測觸發過於頻繁......
我檢查其他管道似乎不會引起問題(例如,amDateFormat)
'我想改變偵測觸發過於頻繁......'這是正確的。觸發變化檢測週期有很多事情。事實上,你可能會對它觸發的頻率感到非常驚訝。 –
我認爲變化檢測是由'amTimeAgo'管道觸發的。 – KarolDepka
這是非常可能的。我希望你可以配置事件的時間間隔,因爲頻繁的事件可能會影響整個組件的性能。尤其是,如果你的計算量很大的話...... –