NightmareJS评估函数挂起在setInterval上

时间:2016-09-01 11:02:03

标签: javascript jquery node.js setinterval nightmare

我一直试图让这段代码在nightmarejs上运行

new Nightmare({
    show: false
}).goto('http://www.example.com')
.inject('js', 'jquery-3.1.0.js')
.evaluate(() = > {
interval = setInterval(go, 2000);
function go() {
    clearInterval(interval);
}
})
.catch(function (error) {
        console.error('Search failed:', error);
    });

为什么这段代码永远不会退出?

更新

如果我使用像这样的.end()方法:

new Nightmare({
    show: false
}).goto('http://www.example.com')
.inject('js', 'jquery-3.1.0.js')
.evaluate(() = > {
interval = setInterval(go, 2000);
function go() {
    if (condition)
    clearInterval(interval);
}
})
.end() <-----
.catch(function (error) {
        console.error('Search failed:', error);
    });

然后程序存在而不让评估函数完成

0 个答案:

没有答案