ConsoleMessage
ConsoleMessage 对象由页面通过 page.on('console') 事件分发。页面中记录的每个控制台消息都会在 Playwright 上下文中触发对应事件。
// 监听所有控制台日志
page.on('console', msg => console.log(msg.text()));
// 监听所有控制台事件并处理错误
page.on('console', msg => {
if (msg.type() === 'error')
console.log(`错误文本: "${msg.text()}"`);
});
// 获取下一条控制台日志
const msgPromise = page.waitForEvent('console');
await page.evaluate(() => {
console.log('hello', 42, { foo: 'bar' }); // 在页面内执行 console.log
});
const msg = await msgPromise;
// 解构控制台日志参数
await msg.args()[0].jsonValue(); // hello
await msg.args()[1].jsonValue(); // 42
方法
args
Added before v1.9传递给 console 函数调用的参数列表。另见 page.on('console')。
用法
consoleMessage.args();
返回值
location
Added before v1.9用法
consoleMessage.location();
返回值
page
新增于: v1.34产生此控制台消息的页面(如果有)。
用法
consoleMessage.page();
返回值
text
v1.9 之前版本已添加控制台消息的文本内容。
用法
consoleMessage.text();
返回值
type
v1.9 之前版本已添加以下值之一:'log', 'debug', 'info', 'error', 'warning', 'dir', 'dirxml', 'table', 'trace', 'clear', 'startGroup', 'startGroupCollapsed', 'endGroup', 'assert', 'profile', 'profileEnd', 'count', 'timeEnd'。
用法
consoleMessage.type();
返回值