Ошибка аргумента командной строки casperjs - PullRequest
0 голосов
/ 12 марта 2019

Это, наверное, очевидно для всех, но я учусь, и это не для меня:)

В функции sendkeys pid завершается ошибкой, если я указываю его через командную строку. Если я укажу это в файле, это работает Это действительно установлено, потому что эхо работает для обоих методов. Когда я говорю, что не получается, я имею в виду 1910193 не появляется в поле на скриншоте. Почему?

Моя команда

rm screenshot.jpg; casperjs mytest.js --pid="1910193"

Мой код

var casper = require('casper').create()
var x = require('casper').select

// obviously, these are not both used at the same time
var pid = '1910193'; // specified in file
var pid = casper.cli.get("pid") // specified on cmdline

casper.echo(pid); // works with both specification methods

casper.userAgent('Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1');
casper.start('https://myurl.net');
casper.then(function () {
   this.sendKeys('#Account', pid);
   console.log('searching.....');
   casper.capture('screenshot.jpg')
});

casper.run();

1 Ответ

0 голосов
/ 12 марта 2019

Это потому, что sendKeys может работать только со строками. pid был передан как int через командную строку. Я вписываю его в строку, а затем она работает как положено.

var pid = String(casper.cli.get("pid"));
...