我希望我的结果是一个函数,它在浏览器上下文中运行,就像一个函数。所以我可以要求它获取不同的资源。但是这个p
参数不起作用。为什么,我该如何解决?
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch({args: ['--no-sandbox'], headless: false})
const page = await browser.newPage()
await page.goto('https://hendry.iki.fi')
const p = '/about'
const result = await page.evaluate((p) => {
return fetch(p)
.then((response) => {
if (response.ok) {
return response.text()
}
})
})
console.log(result)
await browser.close()
})()
答案 0 :(得分:2)
您将参数传递给evaluate
方法,如下所示:
page.evaluate((a, b) => {
// you can use `a` and `b` here
}, a, b);
您可以在docs here中阅读有关该方法的参数的更多信息。