我们可以将未命名的参数传递给phantomjs,并将以下代码写入控制台记录所有参数。
var system = require('system');
var args = system.args;
if (args.length === 1) {
console.log('Try to pass some arguments when invoking this script!');
} else {
args.forEach(function(arg, i) {
console.log(i + ': ' + arg);
});
}
因此,如果我们使用phantomjs index.js 1 2 3
运行phantomjs文件,控制台将记录:1 2 3
。
我的问题是如何将命名参数传递给phantomjs文件,以便我可以启动我的脚本:
>phantomjs index.js --username=user1 --password=pwd
答案 0 :(得分:3)
您可以通过这种方式阅读命名参数(这非常快速和简单):
var system = require('system');
var args = system.args;
args.forEach(function(arg, i) {
var argValue = arg.split('=');
if(argValue.length == 2) {
var arg = argValue[0].replace('--', ''),
value = argValue[1];
console.log(arg + ": " + value);
} else {
//Handles unnamed args
console.log(arg);
}
});
输出:
% phantomjs args.js --foo=bar
args.js
foo: bar