我刚开始使用电子。当我使用electron
运行电子时,我怀疑如何在npm start
中传递命令行参数。
我在Node.js
使用:node server.js one two=three four
命令提示符:
var arguments = process.argv.slice(2);
arguments.forEach(function(val,index, array) {
console.log(index + ': ' + val);
});
Node.js
正在运作。我需要知道如何才能在电子学中完成这项工作。
有人可以为此提供解决方案吗?
答案 0 :(得分:12)
传递参数的方式是一样的,你唯一需要注意的是电子路径。在package.json
中,其编写的npm
开始执行electron main.js
。因此,您必须明确地执行此命令并使用“正确的电子路径”传递参数,即./node_modules/.bin/electron
。然后命令将是
./node_modules/.bin/electron main.js argv1 argv2
以及process.argv
main.js
可以访问的这些参数
如果您希望在应用中访问这些参数,则可以执行以下操作:
1.在你的main.js中定义一个像
这样的变量 global.sharedObject = {prop1: process.argv}
2.在你的应用程序中只需linclude remote并使用此sharedObject
var remote = require('electron').remote,
arguments = remote.getGlobal('sharedObject').prop1;
console.log(arguments);
3.输出为["argv1", "argv2"]