2016-01-04 10 views
1

Я запускаю скрипт casper через узел с помощью функции child_process execFile, передавая некоторые параметры cli данных. Но когда я запускаю скрипт, я не мог хранить эти cli выбирает в переменную для их использования ..Casperjs - не удалось сохранить параметры cli во время работы casper_script через узел

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 i.e., 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}] 

Как я могу добиться этого?

+0

Я обнаружил, что мне не удалось сохранить эти cli opts в переменных или и т. Д., Но может получить значения params с помощью 'casper.cli.get (index)' и использовать столько, сколько я хочу, чтобы он его использовал (внутри этого скрипта) .. это решило мою проблему без хранения в переменных .. – narainsagar

ответ

0

Я обнаружил, что я не был в состоянии хранить эти консоли OPTS в переменные, но может получить значения Params с помощью

casper.cli.get(index)

и использовать столько, сколько я хочу, чтобы использовать его (в том, что сценарий) .. это решило мой случай, не сохраняя в переменных.

Надеюсь, это поможет другим, когда они придут сюда.

Приветствия,

1

Я хочу, чтобы те все сбрасывали данные в одну переменную

Обычно параметры CLI являются пары имя-значение, как

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

И чаще, чем нет, имеет смысл получить их в индивидуальную переменную, например:

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

Но если вы хотите сохранить их все в одной переменной, вы все равно можете использовать casper.cli.options, который будет строкой, а затем использовать JSON.parse (так как он разделяет запятую пары имя-значение и может быть смоделирован как строка JSON).