私はangular2アプリケーションで作業しています。私は事前に設定された時間の期間に実行されるスケジューラの要件があります。角度2 RxJSタイマが動作しているかどうかを検出します。
1:HomeComponent、 2:MasterComponent
は、私は自分のアプリケーションでは、主に2成分を持ちます。
私のマスターコンポーネントは常にブラウザにあり、他のすべてのコンポーネントはそのコンポーネントです。私はHomeComponentに行くとき
は今、私は今..
をngOnInit()
でRxJS timer
追加した、MasterComponentは、私は今..範囲外であると私は(すでに最初に働いている)他の回を開始しMasterComponnentするために戻ってきたとき2タイマーあります。
何時でも実行されているかどうかを検出したい場合は、起動しないでください。 。
私は場合にのみ、ユーザーがログインする時間を開始する必要がありマスターコンポーネントコード:ngOnInitに私はすべてのタイマーがまだ実行されてかを検出できるよう
ngOnInit() {
let timer = Observable.timer(2000, 1000);
timer.subscribe(this.printConsole);
}
printConsole() {
console.log("ticks: " + new Date());
}
がとにかくそこにあります!
は、静的変数を作成します。 'MasterComponent'が常に画面に表示されていると言うと、' ngOnInit'を2回起動することはできますか? – PierreDuc
私は、HomeComponentのロード時にMasterComponentが消えたときに、主に2つのコンポーネントを持っていました。そのため、2回ロードされます。 –