3/1-2
useEffect
最初の一回だけ処理をしたい
特定のstateが変化した時だけデータを処理したい
API処理に使われる
useEffectのタイミング
レンダリングの直後に実行される。
useEffectの構文
- useEffect(()=>{console.log("useEffect invoked")},);
- 第2引数
- 最初に読み込んだ時のみuseEffectを行う
useEffctの第2引数の効果
- []内にuseStateの変数を入れればその変数が切り替わったタイミングでしかuseEffectは起きない
- ex),[count]
- ページ更新のタイミングでは必ずuseEffectが実行される
- 複数の変数に対応させるには?[,]とかく
useEffectのcleanup
- レンダリングが発生した時に継続していたuseEffect内の処理を停止しリスタートする機能?
- useEffectのreturn関数が実行されることにとって実現される?
- useEffectのreturn関数が実行されるのはどのタイミング?
- コンポーネントが消える(アンマウントされる)タイミング
- useEffectのreturn関数が実行されるのはどのタイミング?