かずきのBlog@hatena

すきな言語は C# + XAML の組み合わせ。Azure Functions も好き。最近は Go 言語勉強中。日本マイクロソフトで働いていますが、ここに書いていることは個人的なメモなので会社の公式見解ではありません。

Reduxで忘れがちなこと

Reduxで小さなプログラムを書く練習を何回かしてて忘れがちなことをメモしておこうと思う。

dispatch呼び忘れ

Reduxでは、store.dispatch(アクションクリエイターの関数(引数))という形で処理を書かないといけない。こうすることで、Reducerの関数へ処理が渡っていく。

でも、こう書いて満足してしまうことが稀によくある。

アクションクリエイターの関数(引数);

そう、dispatchしてない。

これで、処理呼んでるのに動かねぇなぁ…って悩む。

Reducerに処理追加忘れ

Reduxってアクションクリエイター作ってReducer作ってetc...と割と作るものがたくさんある。1つのstateの値を書き換えるっていうだけなのに。そんな時忘れがちなのがReducer。

アクションも作ってアクションクリエイターも作って、データを入れるストアも作った!よし実行!

動かない…。

肝心の処理を書くReducer書いてなかったorz

Componentのイベントとメソッドの紐づけ

これはReduxじゃなくてReact。

private handleSubmit(e: React.SyntheticEvent) {
  e.preventDefault();
  // 処理
}

... 省略 ...

render() {
  return (
    <form>
      ... 省略 ...
    </form>
  );
}

こんなコードを書いて実行してしまうことが稀によくある。

そう、formのonSubmit設定してない。メソッドだけ定義して満足してしまった!!

まとめ

ここら辺の何かし忘れってIDEの支援がないとなかなか防止できない気がする。Componentのイベントを書いたら自動でハンドラ生成してくれるとか、関連のある所の処理を簡単に行き来できるようになるとか。

そういうことを思う今日この頃でした。