下のコードでカウントアップに失敗する理由がわかりません。
レンダリングされる→useEffectが実行される→setCountが実行される→再レンダリング時にcountが更新される→・・・という流れの中でどこで問題が発生しているのでしょうか?
また、setCount(count+1)
をsetCount(prevCount => prevCount+1)
とすると機能する理由についても知りたいです。
初歩的な質問ですが、ご教授頂けるとありがたいです。
js
1const Counter = () => { 2 const [ count, setCount ] = useState(0); 3 4 useEffect(() => { 5 const time = setInterval(() => { 6 setCount(count + 1); 7 }, 1000); 8 9 return () => clearInterval(time); 10 },[]); 11 12 return ( 13 <div> 14 <p>{count}</p> 15 </div> 16 ); 17}; 18
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/29 15:05