私は電子を実験しています。 webpackを使用する例がたくさんあります。
しかし、なぜwebpackのようなものを使用するのでしょうか?なぜなら、electronはrequire('module')
をサポートしていると言えます。
電子で使用されるwebpackではありません。 require関数は、electronのベースであるnode.jsの一部です。
Node.jsドキュメントのモジュールに関する詳細情報: https://nodejs.org/dist/latest-v5.x/docs/api/modules.html
ただし、webpackがノードモジュール( https://www.npmjs.com/package/webpack )としても利用可能である限り、electropackでwebpackを使用することもできます。 nodeとchromeは1つのアプリ内で利用可能です。
電子でwebpackを使用する理由reactまたはvue.jsコンポーネントを使用する場合、コンポーネントを分離することをお勧めします。コードを1つのアプリにバンドルするには、browserfyまたはwebpackが必要です。それは、たとえば、それを使用する理由、正当な理由になります。
Webpackは単なるJSモジュールバンドラーではありません。静的アセットのバンドル(たとえば、画像のインラインbase64)、Sass/Less/Stylus/CSS-Modulesのコンパイル、デッドコードの除去、ツリーシェーキングなどに使用できます。適切なローダーと設定があれば、積極的に開発しているときにのみrequire('any-type-of-file.extension')
する必要があります。しかし、私の個人的な経験では、Webpackはdev-serverとHot Module Replacement(HMR)であり、Live Reloadが暗い時代の何かのように感じられるので、それ以上に価値があります。
要約すると、Gulp/Browserify/Rollupのすべての結合されたパワーが得られますが、HMRが上にあり、すべてが単一のツール(およびロットとロットおよびロットとロットのローダー;)内にあります。
Webpackのセットアップは間違いなくPITAです。しかし、Electronアプリをかなりの時間使用する予定がある場合、HMRだけで節約できる時間は十分に価値があります。
ElectronでWebpackを使用する理由はありません。 electron-compile をチェックして、ElectronでBabelとLESSを使用してください。
入手しやすいドキュメント https://webpack.electron.build/
-ソースコードのバンドルにwebpackを使用
-開発のためのwebpack-dev-serverの使用
-レンダラーとメインプロセスの両方のHMR
-電子バージョンに基づいて自動的に設定される@ babel/preset-envの使用
-カスタムwebpackローダー、プラグインなどを追加する機能.
-TypeScript、Less、EJSなどのアイテムをサポートするアドオン.