Redux Advanced
前回の続きです
Async Flow
middlewareなしではReduxのストアは同期的なデータフローしか扱えません。
それによって得られるのはcreateStoreのデフォルトの値と同じです。
必須ではありませんがcreateStoreはapplyMiddlewareを使うことによって非同期的なactionを実装することができます。
redux-thunkやredux-promiseのような非同期的なmiddlewareでstoreをラップすることによってaction内でdispatch methodを使えるようになります、
例えば、promise middleware はPromiseを受け取り、非同期的に開始/終了アクションのペアをdispatchすることができます。
チェーン最後のmiddlewareはプレーンオブジェクトである必要があります。これは同期的なredux data flowであるときに行われます。