我开始使用Grunt,并希望将变量传递给我通过exec运行的PhantomJS脚本。我想要做的是为脚本传递URL,以从中获取屏幕截图。任何帮助将不胜感激,谢谢!
达伦
咕script声脚本
exec('phantomjs screenshot.js', function (error, stdout, stderr) { // Handle output } );
screenshot.js
var page = require('webpage').create(); page.open('http://google.com', function () { page.render('google.png'); phantom.exit(); });
命令行参数可通过模块require('system').args(Module System)访问。第一个始终是脚本名称,然后是后续参数
require('system').args
System
该脚本将枚举所有参数,并将其写到控制台。
var args = require('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); }); }
在您的情况下,解决方案是
咕unt声
exec('phantomjs screenshot.js http://www.google.fr', function (error, stdout, stderr) { // Handle output } );
var page = require('webpage').create(); var address = system.args[1]; page.open(address , function () { page.render('google.png'); phantom.exit(); });