javascript - Promisify PhantomJS 页面方法?

标签 javascript phantomjs promise bluebird

我正在尝试使用 bluebird 来 promisify phantomJS 方法:

page = require('webpage').create();
var checkWebpage = Promise.promisify(page.evaluate(function () {
         // do my thing  
}));

checkWebpage().then(function(result) {
  return result;
});

但是我收到以下错误:

PHANTOM ERROR: TypeError: fn must be a function

最佳答案

Promisify 将函数作为参数,您为其提供在页面对象上下文中计算的函数的返回值。如果您打算评估页面中的初始函数,请将参数包装在另一个函数中,如果不是,只需按原样传递您的函数即可。

关于javascript - Promisify PhantomJS 页面方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31392752/

相关文章:

javascript - NodeJS 数组的意外行为

javascript - 替换字符串开头为 >

selenium - PhantomJS 支持哪个 XPath 版本?

javascript - 如何将 phantomjs pdf 渲染到可以返回的流?

javascript - NodeJS 何时使用 promise ?

javascript - Facebook Activity 提要未列出 Activity

javascript - 将 CSS 转换属性更改为顶级属性的最佳方法?

node.js - 幻影 Jasmine 找不到规范

javascript - 推迟异步服务调用,直到 promise 得到解决

javascript - Array.prototype.map不能用于Promise吗?