Переменные среды
Управляйте конфигурацией и поведением приложения, не изменяя код.
Некоторые поведения Electron контролируются переменными среды, поскольку они инициализируются раньше, чем флаги командной строки и код приложения.
Пример для оболочки POSIX:
$ export ELECTRON_ENABLE_LOGGING=true $ electron
Пример для консоли Windows:
> set ELECTRON_ENABLE_LOGGING=true > electron
Переменные производства
Следующие переменные среды предназначены в первую очередь для использования во время выполнения в упакованных приложениях Electron.
NODE_OPTIONS
Electron включает поддержку подмножества опций Node NODE_OPTIONS. Поддерживается большинство из них, за исключением тех, которые конфликтуют с использованием Chromium BoringSSL.
Пример:
export NODE_OPTIONS="--no-warnings --max-old-space-size=2048"
Неподдерживаемые опции:
--use-bundled-ca --force-fips --enable-fips --openssl-config --use-openssl-ca
NODE_OPTIONS явным образом запрещены в упакованных приложениях, за исключением следующих:
--max-http-header-size --http-parser
Ключ API Google
Поддержка геолокации в Electron требует использования веб-службы геолокации Google Cloud Platform. Для включения этой функции получите ключ API Google и поместите следующий код в файл основного процесса перед открытием каких-либо окон браузера, которые будут выполнять запросы геолокации:
process.env.GOOGLE_API_KEY = 'YOUR_KEY_HERE'
По умолчанию новый сгенерированный ключ API Google может не иметь разрешения на выполнение запросов геолокации. Чтобы включить веб-службу геолокации для вашего проекта, включите её в библиотеке API.
Примечание. Вам потребуется добавить счёт для оплаты в проект, связанный с ключом API, чтобы веб-служба геолокации работала.
ELECTRON_NO_ASAR
Отключает поддержку ASAR. Эта переменная поддерживается только в форкнутых дочерних процессах и созданных дочерних процессах, которые устанавливают ELECTRON_RUN_AS_NODE.
ELECTRON_RUN_AS_NODE
Запускает процесс как обычный процесс Node.js.
В этом режиме вы сможете передавать опции командной строки в Node.js, как если бы вы запускали обычный исполняемый файл Node.js, за исключением следующих флагов:
- "--openssl-config"
- "--use-bundled-ca"
- "--use-openssl-ca",
- "--force-fips"
- "--enable-fips"
Эти флаги отключены, так как Electron использует BoringSSL вместо OpenSSL при построении модуля Node.js' crypto, и поэтому они не будут работать должным образом.
ELECTRON_NO_ATTACH_CONSOLE Windows
Не подключаться к текущей сессии консоли.
ELECTRON_FORCE_WINDOW_MENU_BAR Linux
Не использовать глобальную строку меню на Linux.
ELECTRON_TRASH Linux
Устанавливает реализацию корзины на Linux. По умолчанию gio.
Варианты:
gvfs-trashtrash-clikioclient5kioclient
Переменные разработки
Следующие переменные среды предназначены в первую очередь для целей разработки и отладки.
ELECTRON_ENABLE_LOGGING
Выводит внутренние журналы Chromium в консоль.
Установка этой переменной эквивалентна передаче --enable-logging в командной строке. Более подробная информация в --enable-logging в разделе флагов командной строки.
ELECTRON_LOG_FILE
Устанавливает место назначения файла для внутренних журналов Chromium.
Установка этой переменной эквивалентна передаче --log-file в командной строке. Более подробная информация в --log-file в разделе флагов командной строки.
ELECTRON_DEBUG_DRAG_REGIONS
Добавляет цветовое выделение для перетаскиваемых областей на BrowserView в macOS - перетаскиваемые области будут выделены зеленым цветом, а неперетаскиваемые - красным для облегчения отладки.
ELECTRON_DEBUG_NOTIFICATIONS
Добавляет дополнительные журналы в циклы жизни Notification в macOS для облегчения отладки. Дополнительные журналы будут отображаться при создании или активации новых уведомлений. Они также будут отображаться при выполнении стандартных действий: отображение уведомления, его закрытие, нажатие кнопки или ответ на него.
Пример вывода:
Notification created (com.github.Electron:notification:EAF7B87C-A113-43D7-8E76-F88EC9D73D44) Notification displayed (com.github.Electron:notification:EAF7B87C-A113-43D7-8E76-F88EC9D73D44) Notification activated (com.github.Electron:notification:EAF7B87C-A113-43D7-8E76-F88EC9D73D44) Notification replied to (com.github.Electron:notification:EAF7B87C-A113-43D7-8E76-F88EC9D73D44)
ELECTRON_LOG_ASAR_READS
При чтении Electron из файла ASAR записываются смещение чтения и путь к файлу в системный tmpdir. Полученный файл можно предоставить модулю ASAR для оптимизации порядка файлов.
ELECTRON_ENABLE_STACK_DUMPING
Выводит стек вызовов в консоль при ошибке Electron.
Эта переменная среды не будет работать, если crashReporter запущен.
ELECTRON_DEFAULT_ERROR_MODE Windows
Отображает диалоговое окно сбоя Windows при ошибке Electron.
Эта переменная среды не будет работать, если crashReporter запущен.
ELECTRON_OVERRIDE_DIST_PATH
При запуске из пакета electron, эта переменная сообщает команде electron использовать указанную сборку Electron вместо той, которая скачана npm install. Использование:
export ELECTRON_OVERRIDE_DIST_PATH=/Users/username/projects/electron/out/Testing
Установлено Electron
Electron устанавливает некоторые переменные в вашей среде во время выполнения.
ORIGINAL_XDG_CURRENT_DESKTOP
Эта переменная устанавливается в значение XDG_CURRENT_DESKTOP, с которым ваше приложение первоначально было запущено. Electron иногда изменяет значение XDG_CURRENT_DESKTOP для влияния на другую логику внутри Chromium. Поэтому, если вам нужен доступ к исходному значению, вы должны использовать эту переменную среды.
© GitHub Inc.
Licensed under the MIT license.
https://www.electronjs.org/docs/latest/api/environment-variables