将命令行参数传递给电子可执行文件(在安装已打包的应用程序之后)

时间:2018-03-29 09:38:59

标签: electron electron-builder

我试图在执行时将命令行参数传递给我已经打包的应用程序。 (已经与电子制造商打包并在我的mac上安装了.dmg)

我导航到应用程序可执行文件所在的/Applications/myApp.app/Contents/MacOS文件夹。然后我跑了。 exec myApp --myNewArgument theFancyValue 出于某种原因" myNewArgument"没有出现在我的process.argv数组中。

我错过了什么吗?我认为论证会自动传递给我的电子主要过程。

我感谢任何帮助。

2 个答案:

答案 0 :(得分:3)

是的,传递的命令行参数出现在process.argv数组中,但仅来自主进程

渲染器进程,您需要使用remote.process访问主进程参数:

require('electron').remote.process.argv

答案 1 :(得分:0)

对于打包的电子应用程序源,可以使用以下函数访问命令行参数。假设我们是否已将命令行参数传递为--myNewArgument=theFancyValue。可以在 main.js 中找到它:

import { app } from "electron";
app.commandLine.getSwitchValue("myNewArgument");

这也适用于开发模式。