タグ

ブックマーク / qiita.com/kuy (3)

  • Reduxにおけるreducer分割とcombineReducersについて - Qiita

    2015-08-28 11:06 合成された初期状態ツリーの出力結果を追加 分割されたreducerの初期状態ツリー Reduxの原則の1つであるグローバルな状態ツリーがすべてのソースとなるという点。 理屈ではわかるんだけど、いくつかコンポーネントを作っていくと常に大きなツリーが渡されるってのがとても扱いづらく感じる。つまり、何かアクションを受け取ってそれを状態ツリーに反映させるとき、ほとんどのケースにおいてツリーの一部だけを更新して、それ以外はいじらないことが多いからだ。 Reduxリポジトリのasyncのサンプルコードを追っていくと、reducers/index.jsの部分がよくわからなかった。 他のサンプルだと初期状態ツリーは定数として定義してreducerのデフォルト引数に指定していることが多かったが、asyncではまずそれがない。 そしてなにより状態ツリーはグローバルなものが1つ

    Reduxにおけるreducer分割とcombineReducersについて - Qiita
  • flow-typedで外部ライブラリの型定義を使う - Qiita

    flow-typed とは flowtype で外部ライブラリを使うと欲しくなってくる型定義ファイルを集めたリポジトリになります。TypeScript には DefinitelyTyped という型情報のリポジトリがありますがそれと似たようなものです。 flowtype/flow-typed on GitHub このリポジトリではそれらの型定義ファイルをプロジェクトで使うための便利な CLI ツールも npm 経由で提供しています。稿は flow-typed をプロジェクトで使っていくまでの設定やセットアップについて短く解説します。 CLI ツールのインストール README.md には準備が整ったら npm に公開するよ、と書かれていますが、すでに公開されていて主要な機能は使えているので npm からインストールします(2016-06-12 時点で 2.0.0-beta.5)。 特にプ

    flow-typedで外部ライブラリの型定義を使う - Qiita
  • Reduxのmiddlewareを積極的に使っていく - Qiita

    最初はちょっととっつきにくいけど、責務がはっきり分かれていて比較的コードがごちゃごちゃになりにくい(と思っている)Reduxですが、やはり実戦投入するとどうにも扱いにくい部分が出てきます。 特にそう感じるのは通信系の処理、ユーザーとのインタラクションです。これってつまるところ非同期処理なんですが、処理を依頼する側、つまりActionを投げる側としては「あとのことはまかせた!」と言いたい。Actionを投げる部分ってのはだいたい何かのイベントハンドラだったりしますが、そういう場所に通信やインタラクションの処理をダラダラと書きたくない。 稿ではそれらの面倒な部分を責務が分離されたメンテナンスのしやすいコードになるようにmiddlewareを活用する例をいくつか紹介します。 その前にmiddlewareについて Reduxの公式ドキュメントではログ出力を例に取り、アプリケーション体から分離し

    Reduxのmiddlewareを積極的に使っていく - Qiita
  • 1