Casperjs – 在通过节点运行casper_script时无法保存cli选项

我正在运行casper脚本通过节点使用child_process execFile函数,传递一些数据cli参数..但是,当我运行的脚本我无法将这些cli opts存储到variables使用它们..

var casper = require("casper").create(); casper.echo("Casper CLI passed options:"); require("utils").dump(casper.cli.options); // I want those all dumped data into single variable ie, object but couldn't able to // var options1 = require("utils").dump(casper.cli.options); // var options2 = casper.cli.options; casper.exit(); 

这里是日志:

 ['Casper CLI passed opts:\n', '{\n "page": 1,\n "store": "Hello",\n "title": "Flex App"\n}] 

我怎么能做到这一点?

我希望把所有转储的数据转换成单个variables

通常,CLI选项是名称 – 值对

 casperjs your_script.js --cliOne=one --cliTwo=two .... 

多数情况下,把它们变成个体variables是很有意义的,如下所示:

 var cliOne = casper.cli.get('cliOne'); 

但是,如果要将所有这些variables存储到一个variables中,仍然可以使用casper.cli.options (它将是一个string),然后使用JSON.parse(因为它是逗号分隔的名称 – 值对,可以build模为一个JSONstring)。

我发现我无法将这些cli opts存储到variables中,但可以使用params值

casper.cli.get(index)

并尽可能多地使用它(在该脚本中)..这解决了我的情况下,不存储到variables..

希望这可以帮助别人来到这里。

干杯,