【问题标题】:Issue with NodeJS async/await - accessing function parameterNodeJS async/await 问题 - 访问函数参数
【发布时间】:2018-03-21 14:28:39
【问题描述】:

我正在尝试使用库进行一些抓取,而我的代码使用 Node 的 异步/等待模式。

我在名为“sayhi”的函数中定义了一个变量“page”,并将相同的变量传递给函数 ex,运行代码时出现错误。

const puppeteer = require('puppeteer');

async function sayhi() {
  const browser = await puppeteer.launch({headless: false});
  const page = await browser.newPage();
  await page.goto('https://www.example.com/'); // 
  ex(page); //FAILS

  var frames2 = await newpage.frames(); // WORKS
}

function ex(newpage){
  var frames = await newpage.frames(); // FAILING
}

sayhi();

【问题讨论】:

  • ex() 需要设为async

标签: javascript node.js async-await nodes puppeteer


【解决方案1】:

您在不是async 函数的函数中使用await。试试这个:

async function ex(newpage) {

如果您需要在ex 完全完成后才运行frames2,您还需要在sayhi 中运行await ex(page);

【讨论】:

  • 非常感谢。我按照建议做了。解决了我的问题。
猜你喜欢
  • 2018-03-24
  • 2020-03-25
  • 1970-01-01
  • 2019-02-17
  • 1970-01-01
  • 2015-08-21
  • 1970-01-01
  • 2021-08-06
  • 1970-01-01
相关资源
最近更新 更多