web-dev-qa-db-ja.com

Angular2の監視可能なタイマー条件

タイマーがあります:

initiateTimer() {
    if (this.timerSub)
        this.destroyTimer();

    let timer = TimerObservable.create(0, 1000);
    this.timerSub = timer.subscribe(t => {
        this.secondTicks = t
    });
}

60分後にユーザーにポップアップを表示するには、どのように条件を追加しますか?私はいくつかの質問( thisthis )を調べてみましたが、クリックしてくれません。 RxJSパターンはまだ新しい...

12
Milo

私はこれを私が最初に持っていたものからやってしまい、必要なものが得られました:

initiateTimer() {
    if (this.timerSub)
        this.destroyTimer();

    let timer = TimerObservable.create(0, 1000);
    let hour = 3600;
    this.timerSub = timer.subscribe(t => {
        this.secondTicks = t;
        if (this.secondTicks > hour) {
            alert("Save your work!");
            hour = hour * 2;
        }
    });
}

私が答えとしてマークしたものを試す前にこれを実装したので、ここに残しておきます。

0
Milo