タグ

qiitaとreduxに関するxai1981のブックマーク (22)

  • ReduxでのMiddleware不要論 - Qiita

    問題提起 (※タイトルはキャッチーなのにしましたが、Middleware全般の不要論ではありません。非同期処理において不要論です。) Redux使うときに非同期処理はどう書きますか? 「よくわからないけどMiddleware使うらしい」と思考停止していませんか? この記事では、Redux来どのように扱うことを想定されているのかと、なぜ非同期処理の文脈でもMiddlewareが出てきたのか、そして「実はMiddleware無くても読みやすく書けるよね」という話をしていこうと思います。 Reduxでの設計を悩む人への個人的な解です。 (気になる・詳しく知りたい箇所などありましたらお気軽にコメントください) この記事のゴール ActionDispatcherという筆者が命名したクラスを使うことで、 複数の非同期処理を含むロジックでも読みやすく書ける ネットワーク通信などを含んでもテストがしや

    ReduxでのMiddleware不要論 - Qiita
  • reselectでReact Reduxにvalidationの仕組みを実装する 1/2 - Qiita

    ※ 2019/06/12追記: React Hooksのなかった時代の投稿です。2019/06/12 現在のスタンダードが他にないかよく調べてから読んでください。 記事はSupership株式会社 Advent Calendar 2016の7日目の記事になります。 株式会社Socketの @notsunohito です。 株式会社SocketはSupership株式会社と同じSyn.グループのメンバーであり Web接客と呼ばれるサービスのひとつであるFlipdeskを展開しています。 今回はFlipdeskの管理画面の一部をReact Reduxで書き直したときに validationを実装するのに利用したライブラリreselect について日7日目と8日目を2回にわけて書きます。 TL;DR reselectでvalidationを作ってみたら割りと良かった。 記事で扱うサンプル全

    reselectでReact Reduxにvalidationの仕組みを実装する 1/2 - Qiita
  • ReactとReduxを使ったアプリを試すための環境作る - Qiita

    ReactとReduxを書くための環境を作ってみました。まだまだ駆け出しなので、いろんな便利なライブラリを入れるというところはないですが、シンプルなのでこれから始める人には良いかもしれないです。JavaScriptReact、Redux初心者向けの記事になっていると思います。 オンラインで簡単に試せる方法 作者がReduxを紹介してくれている動画で使われていたJS BinというJavaScriptをオンラインで試せるサービスが良さそうです。他の似たようなサービスもいくつか試してみましたが、ES2015で自然に書けるし、Outputやログが見やすいのでこれが良さそうです。 JS Bin - Collaborative JavaScript Debugging htmlを下記のように書くことで、環境が作れます。 <!DOCTYPE html> <html> <head> <meta char

    ReactとReduxを使ったアプリを試すための環境作る - Qiita
  • Reduxでのクライアントサイドvalidationをどこでやるべきか? - Qiita

    入力フォームを利用するとやっぱり大事になってくるValidationについてあれこれ悩んだ。 結論が完全に自分の中でも出てないが、とりあえず考え尽くした所まで 前提など validation validationとひとくちに言っても色々考える事がある 出力するエラーは一つ?複数? エラーが出たフォームを赤くしたいとかある? 複数の値を見てvalidationしたいとかある? validateするタイミングは随時?ボタン押されたら? 今回の話 Redux + Reactを使う 簡易なTodoリストを想定する Actionの形式はFlux Standad Actionを使う 一旦細かいことは脇に置きつつ、下記のvalidationを想定して実装してみる エラーメッセージは一つ Todoのinputが空だったらエラーとする Todoの追加ボタンが押されたタイミングでvalidateする redu

    Reduxでのクライアントサイドvalidationをどこでやるべきか? - Qiita
  • たぶんこれが一番分かりやすいと思います React + Redux のフロー図解 - Qiita

    【追記】 もうこれ古いから参考にしないでください https://t.co/mXtcc73Orf — もし Laravel が流行しなくなってこられてきてたとしたら、絶対に捨てられてこられてたと思うか (@mpyw) January 26, 2021 Redux にはその昔 connect()() とかいうクソ API と, Redux-Saga とかいう宗教がありました という考古学です — もし Laravel が流行しなくなってこられてきてたとしたら、絶対に捨てられてこられてたと思うか (@mpyw) January 26, 2021 読者対象 Tutorial: Intro To React - React Example: Todo List · Redux 「チュートリアルそれぞれ一周した!Reactは何とか理解できたが,Reduxがさっぱりわかんねぇ!」 ぐらいの人向け。自分

    たぶんこれが一番分かりやすいと思います React + Redux のフロー図解 - Qiita
  • Reduxのreselectとは - Qiita

    Reduxにおけるreducer分割とcombineReducersについて - Qiita こちらの記事を読んで、私も(Redux は勉強し始めたばかりだけど)似たような感想を持っていて 最後のコメントに書かれていた reselect というライブラリが気になったので、調べてみました。 取り急ぎ、こちらの公式ドキュメントおよび YouTube にあった動画を見ておおざっぱに理解したつもりでいるので、自分なりに整理してみます。 (公式ドキュメント) Computing Derived Data | Redux (動画) [React/Redux] Logicless Components with Reselect - YouTube 解決したい課題 ドキュメントに書いてあったのと同じく、Redux の basics チュートリアル を例に考えてみる。 このチュートリアルを通して作成したの

    Reduxのreselectとは - Qiita
  • Redux の Reducer で非同期の状態変更を扱えるように拡張した「Rxdux」について - Qiita

    Redux の不満 Fluxの実装であるReduxの不満点のうちの1つとして、Reducerの扱いがある。もちろんReducerの考え方とそれによるStoreの状態管理、およびcombineReducersによる状態の分割統治についてはまあよいのだけれども、Reducerには同期的な状態変化しか扱えない(扱わない)という制約がある。得てして実際のアプリではモックで同期処理で行っていたことでがいつの間にか非同期の処理となったりすることもあり、その場合Reducerで上手くやってたことでもAction Creatorの方に移動しなきゃいけなくなったりする。 Action Creatorsでは現在のState情報を見るのにはgetState()といきなりStateツリー全体にアクセスすることになる。Reducerではうまくできていた分割統治がここでは厳しくなる。なんとかMiddlewareで工夫

    Redux の Reducer で非同期の状態変更を扱えるように拡張した「Rxdux」について - Qiita
  • redux への 不満を解消する為に, flumptというFlux実装を作った - Qiita

    名前はダークソウルのフラムト(frampt)から。FLux Minimum なんたらかんたら。 なんかTwitterで色々言ってたら naoyaさんにまとめられたので、ここに僕の考えを詳しく書いておく。 mizchi の Redux 考 - Togetterまとめ やりたかったこと 基的なアイデアは、stateをpushする方式(setStateみたいな)だと非同期間で参照したときの値がズレて非同期の終わる順番次第では状態の遷移ステップが壊れてしまう可能性があるんだけど、前のstateをとって次のstateを返す非同期をキューに並べて順に実行することで、トランザクションみたいなものを保証することができるだろう、というもの。 軽量(pubsubインターフェースはEventEmitterそのまま) 複数の状態更新関数の待ち合わせ reduxで感じた不満の解消 TypeScriptフレンドリー

    redux への 不満を解消する為に, flumptというFlux実装を作った - Qiita
  • Redux Middleware in Depth - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    Redux Middleware in Depth - Qiita
  • Redux初めて触って色々わかったメモ - Qiita

    最初思ってたこと vs 現実 思ってたこと:なんか軽量? 現実:誤解だった。割りと作ってくと大きめになってくる。軽量感は無い が、redux体のコードは結構薄い。当に関数群だけ提供しているイメージ 思ってたこと:他のfluxと圧倒的に違う? 現実:これも誤解。構成としては色々作りこむと最終的には一般的なfluxと同じ感じになる(flummoxとかmartyあたりと体感一緒になる) ActionとかActionCreatorとかその辺が一緒になってくる。 思ってたこと:ES6で圧倒的に書ける? 現実:正解。圧倒的にES6を前提にしている。 思ってたこと:React用のもの? 現実:別にそうでもない。react-reduxを使うことでreactで使えるようになる。 詰まった所など 用語編 割りと初めて見たりする用語に出会った ActionCreator martyあたりにもあった。{typ

    Redux初めて触って色々わかったメモ - Qiita
  • Redux: Actionのコーディング規約 と redux-actions - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    Redux: Actionのコーディング規約 と redux-actions - Qiita
  • redux-thunkなのかredux-promiseなのかredux-sagaなのか、それともredux#bindActionCreatorsをやめるのか - Qiita

    前提 ここで書くのはあくまで個人的な意見です。 react, reduxはどちらも使い方次第でフレームワークっぽくも使えるし、ただのツールとしても使える。だからreact, reduxを使ったフロントアーキテクチャはいくらでもあっていいと思う。 これはそのうちの一つを提案するものです。 とはいえ特別な実装方式を編み出したわけでは全然なくて、むしろ1周して出戻りしたかんじ。 結論 非同期処理をコンテナ(またはそこで使うモジュール)に書くだけ。 今は、非同期処理をするためのredux middlewareを使ってないです。 過去記事(react, redux周りのパッケージ選定とKPT[2016-05-27現在])にて、この辺についてもなんやかんやと言っているけど、今はthunkもpromiseもsagaも使っていない。その実装が凄くシンプルで気に入ってるので紹介します。 どうやるのか red

    redux-thunkなのかredux-promiseなのかredux-sagaなのか、それともredux#bindActionCreatorsをやめるのか - Qiita
  • Reduxでコンポーネントを再利用する - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Reduxはとりあえず使えるようになった後の情報が少ないように感じています。よく出回っているサンプルコードは「Real World 〜」のような名前がついていたとしても、あくまで雰囲気を味わうために用意されたものに毛が生えた程度で、現実に起こる問題に対する回答や指針を示しているわけではありません。業務で使うことを検討するのであれば、プロダクトの成長と共にどうやってスケールしていくかイメージできないと導入に踏み切れないですよね。稿ではサンプルコードより大きな規模で開発していくために、Reduxにおけるコンポーネントの再利用について紹介し

    Reduxでコンポーネントを再利用する - Qiita
  • Reduxのmiddlewareを積極的に使っていく - Qiita

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

    Reduxのmiddlewareを積極的に使っていく - Qiita
  • Redux 基礎:Middleware 編 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    Redux 基礎:Middleware 編 - Qiita
  • redux-sagaで非同期処理と戦う - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに ReduxはSingle Store、immutableなState、副作用のないReducerという3つの原則を掲げたFluxフレームワークです。しかし他のフレームワークと違って提供しているものは最小限で、とてもフルスタックとは言えない薄さです。そのためすべてにおいて定番と言える書き方が定まっているわけでもなく、どうしようか迷ってしまうことも少なくありません。その筆頭とも言えるのが 非同期処理 の扱いです。コミュニティでは今でもさまざまな方向に模索が続いていますが、よく使われているものだとredux-thunk、redux-

    redux-sagaで非同期処理と戦う - Qiita
  • combineReducersでハマったメモ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    combineReducersでハマったメモ - Qiita
  • 何をreduxのコンテナにするか - Qiita

    redux最近来てるっぽい reduxreactを使ってみて、コンテナ(Smart Component)とコンポーネント(Dumb Component)をどう使い分けるかについて考えてみた。 上はreduxのcontributor自身による使い分けに付いての解説記事。 各種単体での使ってみた感想はこちら redux react react-redux reactJust UIだし、reduxはアプリの状態管理のみが関心ごとなので、reactとreduxを組み合わせるためには、https://github.com/rackt/react-redux をつかいます。 これの役割は何かと言うと、reduxが管理している状態やactionCreatorと、reactのコンポーネントとの橋渡しです。 結合すると、reactコンポーネントで何かイベントが起きる(=reduxのactionCreat

    何をreduxのコンテナにするか - Qiita
  • React + Redux入門初歩 実際に一からアプリを構築してみる - Qiita

    ReactとReduxが最近ホットということで、自分も触ってみようと思い、入門・チュートリアルと銘打っているドキュメントを読み漁ってみるものの、とりあえず動くものを作るにあたって何をすればいいのかが良く分からなかった。 いったん簡単なものを一から構築して、それから色々いじってみたほうが理論の理解も進む気がしたので、見よう見まねで公式サンプルにあるようなカウンターっぽいものを作ってみる。 必要なnpmパッケージ(2016/04/16現在) アプリ構築に最低限必要なパッケージはおそらく以下のような感じ。 react用パッケージ react react-dom redux&連携用パッケージ redux react-redux その他、半必須 browserify (import文などを使うため) babelify (babelトランスコンパイル用) babel-preset-react(babe

    React + Redux入門初歩 実際に一からアプリを構築してみる - Qiita
  • React + Reduxを使ったWebアプリケーション開発速習会@Wantedly - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    React + Reduxを使ったWebアプリケーション開発速習会@Wantedly - Qiita