2017-07-27 9 views
2

RxJs observablesを介して実装されたintervalタイマを使用してangular2でアプリケーションを作成していて、Observable.interval()とObservable.timer()タブがバックグラウンドの場合はChromeブラウザで 角度成分は、コンソールの秒ごとに第二プリント枚数べきであるが、意図したとおりの背景タブに、これが動作していない - 関数は、xがAngular rxjs Observable.interval()はChromeのバックグラウンドタブで正しく起動しません

角度

funciton間隔で明示的に間隔指定されているすべてのx + 1秒、トリガコンポーネントコード:

ngOnInit() { 
    let a = Observable.interval(1000).subscribe(() => { 
    let date = new Date(); 
    console.log(date.getSeconds()); 
    }); 
} 

例:TAB1のコンソール出力(上記のように定義タイマー付きタブ):

37 <- tab1 (with timer) 
38 
39 
40 
41 <- changed tab to tab2 
43 
45 
47 
49 
51 
53 
55 
57 
59 <- changed tab to tab1 
0 
1 
2 
3 

Mozzila FFに問題はありません。

この動作は、ブラウザのバックグラウンドタブの優先度が低いためと思われますが、間隔は常に1秒だけ延期されるのはなぜですか?

答えて

0

ただし、setInterval()を使用すると、ブラウザに問題はありません。

ngOnInit() { 

    setInterval(()=>{ 

    console.log(new Date()) 
    },1000) 
} 
関連する問題