reduxやめた理由
- とりあえずはトレンドにのる派くらいの理由でreduxを使っていたが、コード量やファイル数がやたら増えて嫌な感じだった
- めんどくさくなって結局ほとんどをlocalなstateで管理していた
- 対象案件が趣味の個人開発だったので、大規模開発ではなく、スピード重視で進めたかった
unstatedにした理由
- なんとなく目に止まってスター数が多かったから(2019.4.22時点で6,000over)
- スター数のわりに英語・日本語ともにまだ情報少なめな気もする。ただ、作りがシンプルなのでそこまでみんな困っていないのかも
- エコシステム的にはまだまだこれから感はある
- ※後悔はしていない
やったこと
- 公式githubの説明を読む
- reduxの
actions
とかcontainers
とかreducers
とかを、unstatedでいうところのContainer
にまとめる- reduxの
containers
でmapStateToProps
とかmapDispatchToProps
していた部分をunstatedのContainer
に移植するイメージ
- reduxの
- reduxの
components
を上記で作ったContainer
をSubscribe
して動くように修正する- HOCでラップするイメージだけど、軽くぐぐった感じ使いまわせそうなのがなかったので、一旦はゴリゴリ書いてみた
- renderにすべて書いている場合は楽だけど、あまりそういうケースも多くないので、結局のところこちらの記事で書かれている通り、既存のcomponent全体を
Subscribe
でラップする感じになると思う
- componentのimport元をreduxの
containers
からunstatedで動くようにしたcomponents
に変更 - コードとファイル数が減って(゚д゚)ウマー
- 個人開発でredux使っている部分はあまり多くなかったので半日とかで移行できました
移行して思ったこと
- 個人開発や小規模プロジェクトであればunstatedで十分
- シンプルで学習コスト低め
- 今後のエコシステム拡大に期待
- unstated-debugなるものもあるけど、reduxだとchromeのpluginあったり、まだそこまでではない感がある