Electron + Angular CLI 如何使用 electron-packager 打包 dist

Electron + Angular CLI how to package dist with electron-packager

我有一个 ElectronAnguarjs CLI 应用程序要分发。

在 运行 ng build --prod 之后,我得到一个 dist 目录,大约 1Mb。 然而,在 运行 electron-packager . 之后,应用程序约为 350Mb。

我的 electron main.js 设置指向 distindex.html,但我猜测 package 命令不使用 dist构建应用程序而不是臃肿的开发版本。 我在 dist 中尝试了 运行 electron-packager .,它仍然创建了一个巨大的应用程序。

有没有办法打包dist文件夹? 我应该使用不同的打包工具吗?

我的目标是打包应用程序,这样就不会破坏带宽来分发。

来自electron-packager readme.md:

Be careful not to include node_modules you don't want into your final app. If you put them in the devDependencies section of package.json, by default none of the modules related to those dependencies will be copied in the app bundles.

angular CLI 在内部使用 webpack 来捆绑您的代码。为了减小 electron 包的大小,当前在 package.jsondependencies 部分中的 webpack 已经捆绑的任何内容都可以放在 devDependencies 部分中。这将防止 electron-packager 捆绑任何 node_modules 您实际上没有引用的代码,因为 webpack 在 dist 文件夹中捆绑输出块时已经提取了它。