puppeteer:console.log 在评估中触发错误“未处理的承诺拒绝”
Posted
技术标签:
【中文标题】puppeteer:console.log 在评估中触发错误“未处理的承诺拒绝”【英文标题】:puppeteer : console.log in evaluate triggers error "Unhandled promise rejection" 【发布时间】:2018-04-05 17:18:22 【问题描述】:In puppeteer , when i want to use console.log from evaluate , it triggers me an error
const puppeteer = require('puppeteer');
(async () =>
const browser = await puppeteer.launch(headless: false);
const page = await browser.newPage();
page.on('console', msg => console.log('PAGE LOG:', ...msg.args));
await page.goto('http://google.com', waitUntil: 'load');
await page.evaluate(async() => console.log('url is $location.href'));
browser.close();
)();
(node:70544) UnhandledPromiseRejectionWarning: 未处理的承诺 拒绝(拒绝 id:1):TypeError:未定义不可迭代 (节点:70544)[DEP0018] 弃用警告:未处理的承诺 拒绝被弃用。在未来,承诺拒绝是 未处理将以非零退出终止 Node.js 进程 代码。
你知道怎么处理吗?
【问题讨论】:
【参考方案1】:msg.args
值未定义,因此当您尝试使用扩展运算符 (...msg.args
) 时,它会失败。
要么记录msg.args
,要么将其包装在一个空/未定义的检查中
【讨论】:
以上是关于puppeteer:console.log 在评估中触发错误“未处理的承诺拒绝”的主要内容,如果未能解决你的问题,请参考以下文章