2016-03-21 15 views
1

だから私は 'this.breakCheck();'タイムアウトが完了した後今はすべての反復で呼び出すのですが、プログラムが動作していますが、タイムアウトが完了した後で1回だけ呼び出すのが理想です。タイムアウトが完了したら、どのように関数を呼び出しますか?タイムアウトはクリックイベント(Typescript)によってトリガーされます

public startBreak(){ 
    for(let i = this.breakSeconds; i > 0; i--){ 
    this.$timeout(() =>{ this.breakSeconds -= 1; this.breakCheck();}, 1000 * i); 
    } 
} 

以前私はここ

public startBreak(){ 
    for(let i = this.breakSeconds; i > 0; i--){ 
     this.$timeout(() =>{ this.breakSeconds -= 1;}, 1000 * i); 
    } 
    this.breakCheck(); 
} 

それを持っていた。しかし '()はstartBreak' クリックイベントで呼び出されるため、それだけですぐに走りました。

ありがとうございました!

答えて

0

スペック:一回のみのみbreakSeconds

最も簡単なの後に呼び出さ

  • 呼ば

    • breakCheck

      public startBreak(){ 
          this.$timeout(()=>this.breakCheck(), this.breakSeconds * 1000); 
      } 
      
  • 関連する問題