質問: プログラミング初学者です。 このほど、サーバサイドをRails、フロントをReact.jsでWebアプリケーションを作ろうと色々と勉強を始めています。 <構想している構成> ・Ruby on Rails 5.1 →gemにwebpacker,react-railsを入れてReactと共存 →dbはmysql2(5.7)を利用 ・React.js (react 16.8,react-dom 16.8) ただ、RailsとReactを組み合わせたWebアプリケーション構築に関する記事が中々見つからず、苦戦しています。下記、アドバイスを頂けると非常にありがたいです。 なお、この組み合わせを選んだ理由はRailsを学んだ後だったため、と言う超短絡的な理由です。。 ◾️質問内容 1相性 RailsとReact.jsの組み合わせてって珍しいものなのでしょうか? どのように組み合わせるのが、一番初学者に優しいでしょうか?? 2Railsモード Rails×Reactで行くとして、Qiitaなどの記事でよく見かけるのが、RailsとReact.jsを別々にして、 Railsはapiモードで動かし画面描画にはタッチさせない方法を見かけます。 RailsとReact.jsを組み合わせる場合、この方法が主流なのでしょうか??? 3Rails×Reactの参考書・参考ページ RailsにgemとしてWebpacker、react-railsを入れて動かす場合、データの引き渡しなどについて参考になる書籍やWebページはないでしょうか。 ご存知の方、ご教示いただけると嬉しいです。 4Rails使用時のReduxについて Railsをバックエンドで使用する場合、Reduxって必要なんでしょうか? イメージとしては、Railsから受け取ったデータをstate管理するような感じでいます。その場合、Railsで管理しなきゃいけないデータの範囲と、Reduxで管理する境界も??で。 今一組み合わせるメリットを感じないのですが、データの引き渡し方すら分かっていないためなのでしょうか?? 理解が乏しく意味不明なことを書いている可能性も高く、大変恐縮ですが何卒よろしくお願いいたします。
回答: > > 1相性 > > RailsとReact.jsの組み合わせてって珍しいものなのでしょうか? > > どのように組み合わせるのが、一番初学者に優しいでしょうか?? > > > React.js は API 呼び出して使用するだけですので、Web フレームワーク側はあまり気にしなくて問題ないかと思います。 > > 2Railsモード > > Rails×Reactで行くとして、Qiitaなどの記事でよく見かけるのが、RailsとReact.jsを別々にして、 Railsはapiモードで動かし画面描画にはタッチさせない方法を見かけます。 > > RailsとReact.jsを組み合わせる場合、この方法が主流なのでしょうか??? > > > 主流というより、むしろそれが目的で React.js を導入しているのではないでしょうか・・・ > > 3Rails×Reactの参考書・参考ページ > > RailsにgemとしてWebpacker、react-railsを入れて動かす場合、データの引き渡しなどについて参考になる書籍やWebページはないでしょうか。 > > ご存知の方、ご教示いただけると嬉しいです。 > > > react-rails の情報は少なそうですね。 ざっと調べた感じだと、公式の情報が一番よくまとまっているような気がします。 GitHub > react-rails > > 4Rails使用時のReduxについて > > Railsをバックエンドで使用する場合、Reduxって必要なんでしょうか? > > イメージとしては、Railsから受け取ったデータをstate管理するような感じでいます。その場合、Railsで管理しなきゃいけないデータの範囲と、Reduxで管理する境界も??で。 > > 今一組み合わせるメリットを感じないのですが、データの引き渡し方すら分かっていないためなのでしょうか?? > > > 従来のサーバーサイドで状態管理するスタイルなら Redux は不要でしょう。 しかし、もしそうだったら React も本当に必要なのかよく考えた方が良いと思います。 Redux は必須ではありませんので、まずは React.js を学習して、必要だと感じたら導入する感じで良いと思います。