Env vars, чтобы изменить имя приложения в project.json и установить время выполнения vars? - PullRequest
1 голос
/ 04 июля 2019

Мне нужно сгенерировать два приложения из одной и той же кодовой базы (например, версии «pro» и «lite»). Здесь много вопросов по этому поводу, но я не нашел ни одного, связанного с node или electron.

Я использовал env только в разработке очень простыми способами, и после поиска я не заметил упоминаний о возможности их использования в развернутом приложении.

Итак, две задачи:
1. Изменение названия приложения

Итак, используя package.json файл с electron builder, я попытался изменить productName следующим образом:

  "productName": process.env.APP_NAME,
  "main": "main.js",
  "scripts": {
    "package-mac": process.env.APP_NAME='Bingo' electron-packager . --overwrite  --platform=darwin --arch=x64  --prune=true --out=release-builds"
}

Но это не сработало. Также видел эту конструкцию, но она также не работала:

  "productName": '${process.env.APP_NAME}',

Я здесь не на том пути?

2. Vars для использования во время выполнения
Чтобы выполнить «pro» и «lite», мне нужен хотя бы флажок, чтобы знать, как его настраивать.
env переменные в любом случае подходят для этого?

Полагаю, что если мне удастся изменить имя приложения, я смогу получить к нему доступ во время выполнения, но мне кажется, что во всем этом мне не хватает чего-то важного.

1 Ответ

0 голосов
/ 04 июля 2019

Используя dot-json , вы можете создать сценарии npm, например:

  "productName": "Bingo",
  "main": "main.js",
  "scripts": {
    "package-mac": "echo $APP_NAME; dot-json package.json productName $APP_NAME --indent 2; electron-packager . --overwrite  --platform=darwin --arch=x64  --prune=true --out=release-builds"
  }

В терминале, может быть, вы можете запустить

 $ APP_NAME='Bingo Pro' npm run package-mac
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...