2017-09-08 37 views
0

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

'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! 
} 

回答

1

你不等待func1,前page.goto结束这样browser.close运行。 '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'}); 
}