Reading: Hooks時代のReactライフサイクル完全理解への道
https://zenn.dev/yodaka/articles/7c3dca006eba7d
モチベーション:useEffectを学ぶ上でライフサイクルを理解したかった
https://projects.wojtekmaj.pl/react-lifecycle-methods-diagram/
Render フェーズ
純粋で副作用を持たない。
https://qiita.com/Mitsuw0/items/801f783ca74b062c1ed8 では… (いわゆるピュアじゃない関数)
引数以外の要因で結果が変わってしまう関数
例: Date()を使って、実行日によってreturn valueが変わる
関数の外に影響を与えてしまう関数
例: セッション使ってる関数
Commit フェーズ
DOM働きかけフェーズ
マウント
コンポーネントが初期化 -> render() 実行 -> componentDidMount が実行されるまでの流れ
更新
propやstateが変更された時
render() 再実行 -> componentDidUpdate が実行されるまでの流れ
レンダー
JSXがDOMとしてレンダリングされるタイミングのこと
componentDidUpdateに相当する動作を関数コンポーネントで実現するには?
useRef等との組み合わせで可能に見えるがあまり積極的に書きたくない…
レンダー: いわばrender関数の実行。原文では render
描画: JSXをDOMとして生成。原文では paint