質問: react.jsはビュー専用のフレームワークということですが、react.jsとHTML、CSSだけではビューのみになってしまうので、WEBアプリケーションを作るためには、MVCでいうところの、vとcにあたるところを補ってくれるものと併用するということになるのでしょうか?(reduxやangularなど?) サーバーサイドから常に非同期でデータを貰うような場合は、reduxなどは不要になりますか? クライアントサイドでデータを保持することが多い場合は、reduxやangularなどとの併用が必要になるということなのでしょうか?
回答: 浅い知識で申し訳ないですが、anglarJSもReactJSも単体で使えますよ。ReactJSはHTMLのようなタグ(実際はhtmlタグとは違う)をクラス内に書いて、それをreturnするというのが基本的な仕組みです。 なので、静的にhtmlを用意せずに動的にreactJSで作ったDOMを表示したい箇所にdivタグを設置しておけば使えるはずです。 なので、ユーザからの入力データからDBを走査してみたいのは、従来のPHP(MVCのMとC)などが担当して、DOMの生成はReactJS(MVCのV)が担当するというイメージだと思います。Java+ReactJSやLaravel+ReactJSで開発してる案件ってあると思います。 anglarJSが活躍するのは、画面遷移なしに、ユーザ入力をバリデートしたり、入力データと紐づけた出力を瞬時にやりたいとき(ショッピングサイトで入力に対して商品の候補を瞬時に出力したい場合など)に使えばよろしいのかと思います。