本節我們來學習 Electron
中的環境變量,環境變量主要是用來控制應用程序配置和行爲而不用更改代碼。某些 Electron
行爲是由它控制的,因此它們比命令行標誌和應用程序的代碼更早初始化。
我們可以將環境變量分爲兩種:生產環境相關變量和開發環境相關變量。
生產環境相關變量
生產環境相關變量常用於在打包後的 Electron
應用程序運行時使用。有下面幾種:
NODE_OPTIONS
:Electron
包括對Node
的NODE_OPTIONS
的子集支持,除與Chromium
使用BoringSSL
相牴觸的情況外,大多數都得到了支持。
GOOGLE_API_KEY
:Electron
包含一個硬編碼API
密碼,用於向谷歌的地理編碼web
服務發送請求。ELECTRON_NO_ASAR
:禁用ASAR
支持,該變量只在set
的派生子進程和衍生子進程中受支持。ELECTRON_RUN_AS_NODE
:作爲正常的Node.js
進程啓動。在這種模式下,我們可以像運行普通的Node.js
可執行文件時一樣將cli
選項傳遞給Node.js
,但以下標誌除外:
--openssl-config
--use-bundled-ca
--use-openssl-ca
--force-fips
--enable-fips
ELECTRON_NO_ATTACH_CONSOLE
:不要附加到當前控制檯會話。ELECTRON_FORCE_WINDOW_MENU_BAR
:不要在Linux
上使用全局菜單欄。ELECTRON_TRASH
:在Linux
上設置垃圾回收實現,默認爲gio
。
開發環境相關變量
開發環境相關變量常用於開發和調試目的。有下面幾種:
ELECTRON_ENABLE_LOGGING
:將Chrome
的內部日誌記錄打印到控制檯。ELECTRON_LOG_ASAR_READS
:當Electron
從ASAR
文件讀取時,我們需要讀取偏移量和文件路徑記錄到系統timdir
。將結果文件提供給ASAR
模塊以優化文件排序。ELECTRON_ENABLE_STACK_DUMPING
:Electron
崩潰時,將堆棧跟蹤打印到控制檯。如果crashReporter
已經啓動了, 則此環境變量將不起作用。ELECTRON_DEFAULT_ERROR_MODE
:當ELectron
崩潰時顯示Windows
的崩潰對話框。如果crashReporter
已經啓動了, 則此環境變量將不起作用。ELECTRON_OVERRIDE_DIST_PATH
:當electron
包運行時,該變量告知electron
命令使用指定Electron
的構建代替由npm install
下載的構建。