Open4
React hooksまとめ
useReducerのメリット
useStateのstateに依存しなくなる!! <= 再レンダリング防止に有効
componentの外に書いてok
good: stateを1つにまとめてロジックを詰め込める
わかりやすすぎる記事
React.memoとuseMemoの違い
関数componentの書き方してる場合、書き方以外に違いはなさそう?
普通に紛らわしいからcomponentのメモ化はReact.Memo使う。
React.Memoに渡すものにuseMemo使う。
useMemoでメモ化したのになぜか再描画される
記事書いた
useMemoとかの第二引数のdepsに入れる値の比較はどうしているのか?
🔽のような時
hoge = {
'name': hoge
}
useMemo(() => doSome(hoge), [hoge])
Object.isで比較している。つまりこのパターンだとcomponentの再描画のタイミングでuseMemoが走ってしまう。
useStateとかhooks系は同一のobjectが返るようになってるのでdepsに入れた場合は走らない。