0

angularを使用してプロジェクトを作成しています。私のプロジェクトでは、システムがアイドル状態になったときにライブラリ ngIdle を使用しました。タイマー付きのポップアップが表示され、その後、ユーザーはシステムからログアウトします。

ブラウザがスリープ状態になり、タイマーが再開するときの問題です。

https://moribvndvs.github.io/ng2-idle/

コードは次のとおりです。

idle.setIdle(5);
    // sets a timeout period of 5 seconds. after 10 seconds of inactivity, the user will be considered timed out.
    idle.setTimeout(60);
    // sets the default interrupts, in this case, things like clicks, scrolls, touches to the document
    idle.setInterrupts(DEFAULT_INTERRUPTSOURCES);

    idle.onIdleEnd.subscribe(() => this.idleState = 'No longer idle.');
    idle.onTimeout.subscribe(() => {
      this.idleState = 'Timed out!';
      this.timedOut = true;
    });
    idle.onIdleStart.subscribe(() => this.idleState = 'You\'ve gone idle!');
    idle.onTimeoutWarning.subscribe((countdown) => {
    this.idleState = 'You will time out in ' + countdown + ' seconds!'
    console.log(this.idleState)
  }
    
    );

    // sets the ping interval to 15 seconds
    keepAlive.interval(15);

    keepAlive.onPing.subscribe(() => this.lastPing = new Date());

    this.reset();

 reset() {
  //  this.idle.setTimeout(false);
    this.idle.watch();
    this.idleState = 'Started.';
    this.timedOut = false;
  }

this.idle.setTimeout(false);をリセットすると、タイマーが開始されません。

4

0 に答える 0