本节我们来学习 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下载的构建。









网友评论