Action
#宣言的UIの設計レシピ
Action = 起こった出来事
from Domain Driven reDux - or Redux as CQRS
https://scrapbox.io/files/649e12d9840b86001b475d0f.png
外部から観測可能(public)な振る舞い
SLAP原則でいうところの高水準
ステート/オブジェクトのライフサイクルにおける状態遷移の契機となる
コンポーネントとロジックをつなぐ役割
命名はイベントを軸に置かれることが多い(onClick, handleClick)
GUIの状態遷移の命名はイベントを冠したものにしたい
Action単体でステートは更新しない
更新の方法は、実装詳細(private)である
状態遷移ロジックはReducerが担う
責務
契約による設計で不整合を防ぐ
エラーハンドリングや非同期処理もここで引き受ける
Domain Object, Value Objectっぽいものを組み合わせ、payloadとなる集約(Aggregate)を作る
作った集約(Aggregate)をReducerの引数として渡す