reduxで頻出するパターンとしてRequest/Sucess/Failureパターンがあります。
これは、APIを叩く際に主に利用されるパターンです。
具体的な流れとしては、Requestアクションを発火しStateをisLoadingに変更しローディングを表示し、APIリクエストを行います。データを取得できれば、Sucessアクションでデータを反映、失敗したらFailureアクションを発火しエラーを表示するのが主なパターンです。
このパターンをライブラリなどで抽象することもありますが、flowtypeでアクションタイプを厳密に管理してると自分でアクションを定義する必要があります。もし、ライブラリ側で適切に型付けする方法を知っていればコメント欄またはtwitterにて教えてください。
自動生成
さて、先日s2sというライブラリを公開しました。
詳しくは、以下の記事を読んでください。
さよならボイラープレート。s2sによる高速reduxアプリケーション構築
https://qiita.com/akameco/items/e1489c6bbf3439ec6ca4
簡単に説明すると、ASTによるリアルタイムコーディングアシストです。
これを使うと、型定義及びアクションの定数が一気に簡単になります。
これは、保存時に以下の変換を行っています。
導入方法については、上記の記事を読んでください。
また、興味があれば、他の記事も読んでいただけるとうれしいです。
さよならボイラープレート。s2sによる高速reduxアプリケーション構築
https://qiita.com/akameco/items/e1489c6bbf3439ec6ca4
s2s: reduxにおけるreducerのテスト。あなたがテストを書く必要はないかも知れない
https://qiita.com/akameco/items/66a2232df0e95e5bfe31
https://github.com/akameco/s2s に公開してるのでスターをいただけるとモチベーションになります。
何かあればコメント欄またはtwitterにて議論しましょう。
Request/Success/Failureパターンに対応した https://t.co/8H30LdTDQF pic.twitter.com/w7Hqno7FKr
— 無職.js (@akameco) 2017年10月3日