如何在 playwright 中运行自定义 js 函数
Posted
技术标签:
【中文标题】如何在 playwright 中运行自定义 js 函数【英文标题】:How to run a custom js function in playwright 【发布时间】:2020-11-23 00:11:09 【问题描述】:?例如显示警报。我已经尝试过这种方法,但没有成功。
var url = await page.evaluate(async() =>
await function alert()
alert("alert");
await alert();
);
【问题讨论】:
看起来像堆栈溢出...alert
fn 不会继续调用自己吗?
@weltschmerz 不确定,我想如果你这么说的话。这只是一个例子。对此很陌生。也许这就是它不起作用的原因。可以分享一下解决方法吗?
好吧,首先,我认为您不需要任何 await
和 async
关键字,除了可能是第一个 await
(而且您无论如何都用错了它们,因为您在函数声明中使用await
)。所以基本上试着去掉page.evaluate
调用中的所有async
和await
语句,再次运行它,让我知道你看到了什么。
【参考方案1】:
你会这样做:
await page.evaluate(() => alert("alert"))
但请记住,该警报在 javascript 浏览器世界中是阻塞的,并且会被 Playwright 自动解除。请参阅here 如何与他们互动(例如关闭)
【讨论】:
以上是关于如何在 playwright 中运行自定义 js 函数的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Playwright.js 中检查页面上是不是存在元素
Playwright JS - 如果找不到元素/选择器,如何全局定义/更改超时?
playwright自定义浏览器设备时区经纬度userAgent注入脚本