javascript - 为什么这段代码会导致 Node.js 使用 phantom 模块挂起

标签 javascript node.js phantomjs

如果我改变这个:

var phantom = require('phantom');
phantom.create(function(ph) {
    return ph.createPage(function(page) {
        return page.open("http://www.google.com", function(status) {
            console.log("opened google? ", status);
            return page.evaluate((function() {
                return document.title;
            }), function(result) {
                console.log('Page title is ' + result);
                return ph.exit();
            });
        });
    });
});

对此:

 var phantom = require('phantom');
    phantom.create(function(ph) {
        return ph.createPage(function(page) {
            return page.open("http://www.google.com", function(status) {
                console.log("opened google? ", status);
                return page.get('title',(function(title) {
                    return title;
                }), function(result) {
                    console.log('Page title is ' + result);
                    return ph.exit();
                });
            });
        });
    });

打印“opened google?”后, Node 卡在控制台上success'并且没有进一步的输出。

我正在尝试使用 page.get() 而不是 page.evaluate,如幻影模块 docs 中所述。 :

Properties can't be get/set directly, instead use p.get('version', callback)

最佳答案

您滥用了page.get()。该方法只有两个参数,而不是三个。

具体操作方法如下:

page.get('title', function(title) {
  console.log('Page title is ' + title);
  return ph.exit();
});

关于javascript - 为什么这段代码会导致 Node.js 使用 phantom 模块挂起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20118511/

相关文章:

JavaScript - 获取并显示 <input type ="time"> 中的当前时间,同时还可以使用 <input type ="date">

javascript - 1980 年前和 1980 年后的 RegEx Vin 验证

javascript - 重定向 localhost 而不是 myserver.org :3000/login/callback

javascript - 如何: Print Select Option Values?

unit-testing - 有没有办法延迟 QUnit 测试套件的启动?

javascript - Electron ,如何通过加载不同的文件来创建另一个窗口

javascript - 使用 native javaScript 附加 html

javascript - 如何使用 npm 检查

javascript - 如何通过超时和监听器创造 future

javascript - 是否可以将相对 URL 提供给 Phantom.js 页面生成器来获取 PDF 渲染?