Dialog
Dialog 对象由页面通过 page.on('dialog') 事件派发。
使用 Dialog
类的示例:
const { chromium } = require('playwright'); // 或 'firefox' 或 'webkit'
(async () => {
const browser = await chromium.launch();
const page = await browser.newPage();
page.on('dialog', async dialog => {
console.log(dialog.message());
await dialog.dismiss();
});
await page.evaluate(() => alert('1'));
await browser.close();
})();
:::注意 除非有 page.on('dialog') 监听器,否则对话框会自动关闭。当存在监听器时,必须调用 dialog.accept() 或 dialog.dismiss() 来处理对话框 - 否则页面会冻结等待对话框响应,点击等操作将永远无法完成。 :::
方法
accept
v1.9 之前版本添加当对话框被接受时返回。
用法
await dialog.accept();
await dialog.accept(promptText);
参数
返回
defaultValue
Added before v1.9如果对话框是 prompt 类型,返回默认提示值。否则返回空字符串。
用法
dialog.defaultValue();
返回值
dismiss
Added before v1.9当对话框被关闭时返回。
用法
await dialog.dismiss();
返回值
message
Added before v1.9对话框中显示的消息内容。
用法
dialog.message();
返回值
page
Added in: v1.34触发此对话框的页面对象(如果可用)。
用法
dialog.page();
返回值
type
v1.9 之前添加返回对话框的类型,可能是以下之一:alert
、beforeunload
、confirm
或 prompt
。
用法
dialog.type();
返回值