如何忽略该元素不存在并跳过截屏?



我想截取一个元素的截图,这个元素可能存在,也可能不存在

  const elem = await page.locator('.selector')
  await elem.scrollIntoViewIfNeeded();
  await elem.screenshot({path: 'screenshot.png'});

如果元素不在页面上,则返回

elementHandle.screenshot: Timeout 30000ms exceeded.

是否有一种方法可以忽略不存在并继续前进?

const elem = await page.locator('.selector')
if(elem) {
  await elem.scrollIntoViewIfNeeded();
  await elem.screenshot({path: 'screenshot.png'});
}

尝试在try {} catch() {}中包装您的逻辑,因为不存在的截图创建的可能抛出将被传递到可以忽略的地方,而不是崩溃运行

最新更新