电子生成时间变量

问题描述

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

  1. 一个安装exe,其中将electronic-updater配置为在后台自动更新。
  2. 一个msi,安装的应用程序不会自动更新,而只是警告用户已经发布了新版本。

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

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

所以问题实际上是:

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

解决方法

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

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

这不是理想的,因为这意味着我无法使用一个electron-builder命令来构建所有命令,但是碰巧我无法在Mac上构建msi,因此最终单独发行还是命令。