2017-08-26 6 views
-2

私は2番めに新しいです。私はapp.componentでsetTimoutを使いたいと思います。私は他の多くの記事を参照しようとしたが、何も私のために働いた。角2:SetTimout

以下は、私が試していたコードです。例を挙げて助けてください。

catchError(){ 
 
    if(navigator.onLine){ 
 
       console.log("connected"); 
 
       this.displayNetworkError = false; 
 
      } 
 
      else{ 
 
       console.log("Disconnected"); 
 
       this.displayNetworkError = true; 
 
      } 
 
}; 
 

 

 
internetConnection(){ 
 
     setTimeout(this.catchError(), 2000); 
 
    };

+0

を 'のsetTimeout(()を使用し=> this.catchError()、2000) ';あなたは何か* callable *ではなく、何かを渡します。 – jonrsharpe

答えて

0

のsetTimeout関数とミリ秒単位で時間を必要とします。通常はjavascriptでsetTimeout(function(){}、1000)のような関数を渡しますが、typescriptではsetTimeout(()=> {}、1000)のようなラムダ式を使用することができます

+0

あなたは – Jay

+0

を持っていると私に助けてください助けてくださいラムダと呼ばれるものは "矢印機能"と呼ばれていて、それらはtypescriptだけでなく新しいバージョンの純粋なjavascriptで利用できます。 –

+0

私はこれを試していますが、一度だけ呼び出されています。 – Jay

0

あなたはその機能を実行していますthis.catchError()

を書き込むときcatchErrorのsetTimeoutの最初の引数は、関数 する必要があるので、ちょうどthis.catchError代わりにthis.catchError()