Open1

Reactの状態管理どうすれば委員会

YuheiNakasakaYuheiNakasaka

https://blog.uhy.ooo/entry/2021-07-24/react-state-management/
https://engineering.linecorp.com/ja/blog/line-sec-frontend-using-recoil-to-get-a-safe-and-comfortable-state-management/

  • setState+propsのバケツリレー
    • 基本は使うことはなさそう。ペライチのPoCページとかならまぁ。
  • Context APIを使う
    • 簡単なページなら使えそう。FlutterのProviderみたいなもんだと思ってたが、selectとかがないのでProviderに定義された状態が変化すると配下のコンポーネント全てが再レンダリングされる。どちらかというとChangeNotifierだ。
  • react-redux
    • すべてのステートを一つのStoreで管理し、selectorによってそこから必要なものだけを取り出すというインターフェース

    • こっちがむしろProvider+ChangeNotifierとかに近そう
    • ActionとかReducerとかあの辺が冗長になりがちで面倒な印象はある
  • Recoil
    • ステートを複数のAtomに分散させることができ、selectorをコンポーネント毎に提供。
    • riverpod+state_notifierみたいな感じ。