簡體   English   中英

Ember.js如何避免計算屬性出現無限循環?

[英]Ember.js How to avoid infinite loop in computed properties?

我有這個控制器。 它從模型中讀取publishedAt ,並按如下方式划分日期和時間:

dd: function() {
    console.log('dd');
    return moment(this.get('publishedAt')).format('YYYY-MM-DD');
}.property('publishedAt'),

tt: function() {
    console.log('tt');
    return moment(this.get('publishedAt')).format('H:m');
}.property('publishedAt'),

// check for recursion
publishedAt: function() {
    console.log('publishedAt');
    return moment(this.get('dd') + this.get('tt')).toDate();
}.property('dd', 'tt'),

如您所見,它將日期和時間分隔為publishedAt ,並且當日期或時間發生變化時,它將更新最終的publishedAt

現在這是我的大問題...它會產生一個無限循環,以獲取彼此的價值。 如何解決呢? 請幫忙。

dd: function() { // in the controller
    console.log('dd');
    return moment(this.get('publishedAt')).format('YYYY-MM-DD'); // from the model
}.property('publishedAt'),

tt: function() { // in the controller
    console.log('tt');
    return moment(this.get('publishedAt')).format('H:m'); // from the model
}.property('publishedAt'),

// check for recursion, in the controller
publishedAtDisplay: function() {
    console.log('publishedAtDisplay');
    return moment(this.get('dd') + this.get('tt')).toDate();
}.property('dd', 'tt'),

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM