javascript - puppeteer : console. 登录评估触发器错误 "Unhandled promise rejection"

标签 javascript node.js chromium puppeteer browser-testing

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: Unhandled promise rejection (rejection id: 1): TypeError: undefined is not iterable (node:70544) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

你知道如何处理吗?

最佳答案

msg.args 值未定义,因此当您尝试使用扩展运算符 (...msg.args) 时,它会失败。

要么记录msg.args,要么将其包装在空/未定义的检查中

关于javascript - puppeteer : console. 登录评估触发器错误 "Unhandled promise rejection",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46918489/

相关文章:

javascript - 如何在 Android 上将 getUserMedia 与 Cordova 一起使用?

html - Android webview 视频自动播放成功,但同样的 apk 在 android Tv mini pc 上失败?

c++ - webrtc中的CreateVideoSource()的替代方法

javascript - 如何调整剑道 ui 组合框的大小?

javascript - 循环遍历脚本本身内的单词并更改它

javascript - 将 Canvas 的全部内容淡化为透明而不是其他颜色的最快方法

javascript - 如何使用 jquery/javascript 删除 br 之后的 div 内的文本字符串?

node.js - 套接字.io : how to control & check the message flow?

node.js - Github 的 Action 不是构建 React 应用程序

javascript - 如何将数据从 EJS 模板传递到 AngularJS Controller