2017-07-11 14 views
0

ComponentDidMountは毎秒(setIntervalを使用して)コンポーネントを更新しますが、状態がtrueの場合のみ更新します。状態がtrueの場合、このコンポーネントを実行します

+6

'コンポーネントが搭載されているときcomponentDidMount'は一度だけ実行されます。あなたが話していることの実際の例を提供してください。 –

+0

私は毎秒それを更新するsetIntervalを持っています。それを言及していないと申し訳ありません。 –

+0

@karrijayanth私たちにいくつかのコードを示してください。 – Boky

答えて

1

あなたが代わりにsetTimeoutを使用し、「状態が真である」場合にのみ、タイムアウトを更新することができ

componentDidMount() { 
    this.start() 
} 

componentWillUnmount() { 
    this.stop() 
} 

start() { 
    this.timeoutId = setTimeout(() => { 
    doSmthUseful(); 

    if(state is true) { // whatever you mean by "if my state is true" 
     this.start() 
    } 
    }, 1000) 
} 

stop() { 
    clearTimeout(this.timeoutId) 
} 
+0

私のために働くおかげで男 –

関連する問題