С использованием классических
промисов будет быглядеть примерно так
var webPage = require('webpage'),
page = webPage.create();
var Promise = require('bluebird');
function xPage(url){
return new Promise(function (resolve, reject) {
page.open(url, function (status) {
if (status !== 'success') {
console.log('StatusPage: ' + status);
reject(status);
} else {
console.log('StatusPage: ' + status);
var a = 'ggggggggggggg';
resolve({
a: a
});
}
});
});
}
xPage('https://ya.ru/')
.then(function (stat) {
console.log( JSON.stringify(stat) );
page.render(Date.now() + '.png');
phantom.exit();
})
.catch(function(err){ console.log(err) })
;
bluebird инсталлируется как обычно через
npm i bluebird
находясь в папке проекта phantomjs