async.js - 我如何知道 Puppeteer 中的页面是否已关闭

标签 async.js puppeteer

当页面存在(或打开)时,我需要在页面上做一些 Action 。但是其他异步代码可以随时关闭它。
我尝试使用代码,如下所示:

async.whilst(
      function(){ /*TEST function: return true if page is opened or false otherwise*/},
      function (cb){
          (async()=>{
                await page.evaluate(_=>{/*some code*/})
           })();
      },
      callbackopt
 )

我怎么知道页面是打开还是关闭,将此代码传递给测试函数?

最佳答案

page.isClosed()
您可以使用 page.isClosed() 在 Puppeteer 中检测页面是否关闭:

if (page.isClosed()) {
  // The page IS closed ...
} else {
  // The page IS NOT closed ...
}

关于async.js - 我如何知道 Puppeteer 中的页面是否已关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46424501/

相关文章:

javascript - 如何优化 async.js API 调用?

javascript - 如何使用nodejs处理查询和更新SQL数据库中表的CronJob?

javascript - 如何停止点击事件 javascript 上的异步函数?

puppeteer - 如何在 puppeteer js 中选择具有多个类名和特定 aria-label 的按钮?

javascript - Puppeteer:如何在嵌套选择器中获取 img src?

javascript - 使用异步处理高原流 block

node.js - ES6 promises 是否取代了对 async.js 方法的需求?

javascript - 如何在文件中的 RPi 上的 javascript 之后获取完整的 html

javascript - 在 puppeteer 中获取带有类名的独占类名列表

javascript - 从下拉列表中选择一个未使用 Puppeteer Select 实现的选项