web-dev-qa-db-ja.com

なぜReactはBabelとWebpackが動作する必要があるのですか?

私はvue.jsのwikiページを見て、これを見ました:

React開発と比較すると、Vueは既存のWebアプリケーションにはるかに簡単に統合できます。通常、Webアプリケーションは、Vue.js JavaScriptライブラリを含めるだけで、すぐにVueの使用を開始できます。 WebpackまたはBrowserifyでの使用は、必ずしも厳密ではありません。これは、WebpackとBabelでの使用が避けられないReact開発とはまったく対照的であるため、既存のWebアプリケーションの変換がはるかに困難になります。

誰かがReactにwebpackとbabelが必要な理由を説明できますか? ReactのCDNへのリンクをドロップするだけで機能すると思いました。

15
stackjlei

いいえ、ReactスタックにはBabelとWebpackは必要ありません。BrowserifyやGulpなど、お気に入りのスタックを構築する他の選択肢を見つけることができます。

ただし、物事を簡単にしたい場合は、Reactと一緒にBabelとWebpackを学習して使用することをお勧めします。

  • モジュールを使用できます。
  • ES6でJSXを使用できます。
  • 多くのブラウザをサポートしています
  • より高度な機能(async/await)などを使用できます

Webpackを使用

  • Sass、less、postcssなどに異なるローダーを使用できます
  • Uglify、HotModuleReplacement、Chunksなど、さまざまなプラグインを使用してビルドを最適化できます。

here にあるwebpackを使用すると、さらに多くの利点があります。

17
MattYao

誰かがReactにwebpackとbabelが必要な理由を説明できますか? ReactのCDNへのリンクをドロップするだけで機能すると思いました。

Reactはbabelやwebpackを「必要」としませんが、ライブラリはES6 javascript構文とJSX(本質的にはJSのHTML)を使用するという概念に基づいて構築されています。

ただし、Reactは ES6 および [〜#〜] jsx [〜#〜] なしで使用できます。これにより、Babelの初期の必要性はなくなりますが、ES6の潜在的な利点は失われます。およびJSX。

WebpackはReactとは別ですが、MattYaoが言及されている理由でReactプロジェクトで一般的に使用されています。

Vueと比較して、JSXはhtml、cssおよびJSをVueの単一ファイルコンポーネントが達成しようとする1つのファイル/コンポーネントに含める利点をもたらします。これらには、webpackのようなものを使用したビルドステップも必要です。

5
Daniel