首页 > 解决方案 > 电子构建时间变量

问题描述

我需要创建我的电子应用程序的两个版本:

  1. 一个静默安装 exe,其中 electron-updater 配置为在后台自动更新。
  2. 已安装的应用程序不会自动更新的 msi,只会提醒用户新版本已发布。

我这样做的一种方法是在我为两个构建中的每一个运行电子构建器之前将某种配置复制到构建目录中,并在应用程序中读取此配置以确定如何处理电子更新器事件。

在我这样做之前,我试图确定这是否是最好的方法。理想情况下,我有一个变量可以发送给电子生成器来切换电子更新器功能,但我认为不存在这样的事情。

所以问题真的是:

是否可以在电子应用程序中使用构建时变量?如果是这样,怎么做?

标签: electronelectron-builderelectron-updater

解决方案


我自己想出的一个解决方案是创建一个 config.json 文件,我将它require-d 放入我需要数据的 js 文件中。

我针对不同包类型的构建过程的一部分涉及在打包之前使用构建目录中特定于构建的版本覆盖 config.js 文件。

这并不理想,因为这意味着我不能用一个electron-builder命令构建所有这些,但碰巧我无论如何都无法在我的 Mac 上构建 msi,所以最终还是发出了单独的命令。


推荐阅读