react-routerとredux-simple-routerとredux-react-routerとreact-router-reduxとredux-router

  • 31
    いいね
  • 4
    コメント
この記事は最終更新日から1年以上が経過しています。

概要

react*reduxでrouter使いたい時に何が何だかわからなくなったので整理

登場人物

  • react-router
  • react-router-redux
  • redux-router
  • redux-simple-router

    • react-router-reduxの旧npmパッケージ名(kuyさん、ありがとうございます!)
    • react-router-reduxって名前ですでにnpmが出ている
    • react-router-reduxがminで4kbなので、積極的にこちらを使う理由もないと思われる。 https://gyazo.com/be754808dcb9b573a630dd7456323dad
    • npmのページ
  • redux-react-router

    • redux-routerの旧npmパッケージ名
    • こっちも多分 redux-router の名前で育てていくと思われる
    • npmのページ

なので実際の登場人物は3人です
* react-router
* react-router-redux
* redux-router

3人について簡単に

実はまだ使ったことないので、私の理解の範囲で簡単に。。。

react-router

reduxは関係ない。reactにてroutingするための機能
urlを変えたりそれをreactが聞けるようにしたり

react-router-redux

reduxはstateで状態管理してreactに教えてくれてるわけだからurlの変更もstateとして管理したいぜ。
って言うのを叶えてくれる人。
シンプル。
星多め。(2016-05-06現在)

redux-router

基本的にreact-router-reduxと同じことをやってくれる人。
多機能。
星少なめ。(2016-05-06現在)

個人的な考え

reactjsさんが作ってて、星も多いreact-router-reduxを使っておけば安心な気はするし、そうしようと思っている。
けど、
やりたきことはあくまで「urlの変更をreduxが聞いててほしい」なので、react−routerに依存してるのは気持ち悪い気もしている。
react-routerのrouteコンポーネントのあたりを削ったシンプルなrouterパッケージがあったらそっちを使いたい気分。

2016−05−09追記

react-router-redux って名前でもnpmパッケージが出ている事実が発覚
しかもこっちの方がバージョン進んでる。
というかこっちしかバージョンが進んでない。
書き方めっちゃシンプル。なにこれ。

2016−05−23追記、修正

kuyさんに指摘いただき、混乱をさけるため redux-simple-router の文脈を減らしました。
本家のREADMEでも、「前はredux-simple-routerって呼ばれてたやつ」的に言われてます。

Formerly known as redux-simple-router