无法访问nodeJS / puppeteer中的模块内的“页面”变量

时间:2018-09-15 00:54:54

标签: node.js scope puppeteer

我正在尝试在nodeJS中将我的puppeteer应用程序模块化。我具有以下功能:

isPageAccessible = async () => {
    var pageRes = await page.goto(LOGIN_URL, {
        timeout: 0
    }).catch(e => console.log("Página es inaccesible. " + e));
}

如果我直接在我的主要server.js文件中使用它,它就可以正常工作:

app.post('/apostillasBot', async (req, res) => {

    const LOGIN_URL = `website`
    const browser = await puppeteer.launch()
    const page = await browser.newPage()

    while(!isPageAccessible()) isPageAccessible();


})

但是如果我将其包装在模块中并像这样导出它:

var exports = module.exports = {};

exports.isPageAccessible = async () => {
    var pageRes = await page.goto(LOGIN_URL, {
        timeout: 0
    }).catch(e => console.log("Página es inaccesible. " + e));
}

我收到以下错误:

  

(节点:18156)UnhandledPromiseRejectionWarning:未处理的承诺拒绝(拒绝ID:1):ReferenceError:未定义页面

这似乎是一个范围错误,但到目前为止,我找不到解决它的方法。有什么想法吗?谢谢!

0 个答案:

没有答案