【Redux】mapDispatchToProps
鬼門connect攻略② mapDispatchToProps
Actionをstoreへdispatchする関数
connect( mapStateToProps mapDispatchToProps mergeProps )
「storeへdispatch」を
propsのように各componentを渡らせる性質を持たせる(ToProps)
ことに対応させている
具体的な使いかた
関数として定義する場合とオブジェクトとして定義する場合で 挙動がちがうらしい?
React Redux コンテナコンポーネントのプロパティにActionをdipatchするコード(mapDispatchToProps)の書き方 - Qiita
公式でも分類している
Connect: Dispatching Actions with mapDispatchToProps · React Redux
Connect: Dispatching Actions with mapDispatchToProps · React Redux
関数として定義する場合で書きます。
(コードは公式より:https://react-redux.js.org/using-react-redux/connect-mapdispatch#defining-mapdispatchtoprops-as-a-function)
const mapDispatchToProps = dispatch => { return { // dispatching plain actions increment: () => dispatch({ type: 'INCREMENT' }), decrement: () => dispatch({ type: 'DECREMENT' }), reset: () => dispatch({ type: 'RESET' }) } }
「dispatch(するaction)を」propのようにstoreへ渡すので、 dispatchを引数とする関数をして記述する。
正確にはdispatch
の部分は
store.dispatch
の意味らしいけど、そうは書かなくていい理由は
ドツボポイントっぽいので
そーいうものだ、でひとまず留めます(- -;)