0

为什么在函数中使用页面实例(与newPage不在同一范围内)时会失败?感谢帮助和解释。

'use strict'; // see strict mode
var url ='http://example.com';

const puppeteer = require('puppeteer');

(async() => {

const browser = await puppeteer.launch();
const page = await browser.newPage();

    func1(page);        
    browser.close();

 })();

async func1(page) {

     console.log(page);  // output ok
     await page.goto(url, {waitUntil: 'network idle'}); // failed!
}
4

1 回答 1

1

你不等待func1,所以在完成browser.close之前运行page.goto'network idle'也应该'networkidle'没有空间。

'use strict'; // see strict mode
const url = 'http://example.com';

const puppeteer = require('puppeteer');

(async() => {

  const browser = await puppeteer.launch();
  const page = await browser.newPage();

  await func1(page);
  browser.close();

})();

async function func1(page) {

  console.log(page); 
  await page.goto(url, {waitUntil: 'networkidle'});
}
于 2017-09-08T19:37:25.800 回答