2016-11-26 56 views
2

如何獲得多少次這種觀測的跑如何獲得蜱的數量從rxjs可觀察

this.clock = Observable.interval(1000).map(function(value){ 
    if(value == 0){ 
     return value * 100/60; 
    } 
    return value * 100/60; 
    }).take(61); 

我想,這可觀測跑1或2或3次..並顯示與插補每次在模板

,如果我這樣做,它會返回百分比變量是NaN的

this.clock.subscribe(function(x){ 
       console.log(x); 
       console.log("percentage " + this.percentage); 
       this.percentage = this.percentage + 1; 
    }) 
+0

'如果你不初始設置'this.percentage = 0' this.percentage'返回NaN。這是因爲'undefined + anyNumber = NaN' – adriancarriger

+0

謝謝你,很好的信息 – blackHawk

回答

2

然後你就可以創建一個變量,它負責存儲多少時間observab的計數樂跑了。然後在該值上應用async以顯示observable返回的值。

{{ clockCount | async }} 

代碼

clockCount: any; 
count: number = 0; 
ngOnInit(){ 
    this.clock = Observable.interval(1000).map((value) => { 
     if(value == 0){ 
     return value * 100/60; 
     } 
     return value * 100/60; 
    }).take(61); 
    this.clockCount = this.clock.do(() => this.count = ++this.count); 
} 
+0

它在地圖函數中被操縱,我想要的是顯示每次這個觀察將運行,就像它運行第一次它應該讓我1,我會能夠顯示到視圖中,時鐘正在返回百分比非順序整數像1,2,3等 – blackHawk

+0

@blackHawk然後我可以想到手動做.. –

+0

爲什麼這段代碼會返回百分比變量爲NaN,請參閱更新的問題 – blackHawk