2017-08-29 7 views

答えて

0

あなたは単に

location.reload() 

またはあなたがより多くの角度スタイルのアプローチをしたい場合は、携帯電話のブラウザ上の睡眠について

再び
this.router.navigate(["myRoute"]); 

をご ルートを呼び出して試すことができますJS関数を呼び出すことにより、アプリケーションを再ロードすることができますおそらくそれはあなたの目的を果たすことができるNoSleep.jsをチェックアウトすることができます。

+0

角度スタイルのアプローチである可能性があります。 – AlexBor

+0

Plsは回答を回答としてマークし、他の人がこの問題を見るときに知っているようにします。 –

0

これを実現する簡単な方法は、ブラウザがスリープ状態にあるかどうかを検出するタイマーを実行することです。時間間隔オペレータ、

http://reactivex.io/documentation/operators/timeinterval.html

Rx.Observable.timer(0, 1000).timeInterval().subscribe(timer => { 
    if (timer.interval > (1000 + SLEEP_THRESHOLD)) { 
     console.log ('wake-up from sleep detected'); 
    } 
}); 

他の簡単な方法RxJSを使用して

は、感謝を使用し、

var now = new Date().getTime(); 
setInterval (function() { 
    if ((new Date().getTime() - now) > SLEEP_THRESHOLD) { 
     console.log ('wake-up from sleep detected'); 
    } 
    now = new Date().getTime(); 
}, 1000); 
+0

基本的にObservableの例では、スリープ状態で5秒後にSLEEP_THRESHOLDが4000になるとログに記録されますか?それがアイデアですか、何かが欠けていますか? これはコンポーネントの初期化時に行う必要がありますか? – AlexBor

+0

ブラウザがスリープ状態になると、タイマーは実行されません。ブラウザが起きてタイマーが起動すると、発生したイベントの持続時間に大きな違いがあり、これはスリープからの起床とみなす必要があります。 –

+0

ありがとう、完璧に動作します。 – AlexBor

関連する問題