NodeJS async / await问题 - 访问函数参数

时间:2018-03-21 06:26:22

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

我正在尝试使用库进行一些抓取,而我的代码使用Node' s    async / await pattern。

我已经定义了一个变量' page'在函数名称' sayhi'我将相同的变量传递给函数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();

1 个答案:

答案 0 :(得分:1)

您在不属于await功能的功能中使用async。试试这个:

async function ex(newpage) {

如果您需要frames2仅在ex完成后才能投放,您还需要await ex(page);中的sayhi