javascript - Puppeteer 写入某些选项卡的 pdf 的问题
问题描述
在无头模式下,我对 puppeteer 有一个非常可怕的问题。
我打开一个页面,模拟页面上的按钮单击(打印),这会打开第一页的特定打印导向页面,我想将该打印版本写入 pdf。
我在无头模式下测试了整个事情:假以查看发生了什么,它似乎工作正常。打开第一页,触发按钮单击,打开带有我想要的页面的新选项卡。
但问题是......当我想写入 PDF 时,它总是使用第一页。
非常感谢这个解决方案,因为它让我发疯。
部分守则。
const page = await browser.newPage();
var response = await page.goto(formUrl, { waitUntil: 'networkidle2' });
await page.waitForSelector('button[name="Print"]');
await page.click('button[name="Print"]');
const pagewnew = await browser.pages();
await pagenew[2].bringToFront();
编辑:添加了 PDF 打印代码
await page.pdf({
path: outputFile,
format: 'A4',
landscape: true,
displayHeaderFooter: false,
printBackground: false,
margin: {
top: '10mm',
right: '10mm',
bottom: '10mm',
left: '10mm',
},
});
解决方案
推荐阅读
- reactjs - 为什么在反应中删除后组件不重新渲染
- python - Sklearn 错误无法将大小为 6912 的数组重塑为形状 (614,154)
- jquery - 谷歌地理编码自动完成限制在马里兰州
- amazon-web-services - 打开的文件太多 AWS Glue 作业
- azure - 无法在 LogAnalytics Workspace 中查看 AKS 日志
- php - 在 WooCommerce 中制作爱尔兰所需的邮政编码结帐字段
- azure-devops - Azure Devops:将命令行任务的输出保存到要在另一个步骤中使用的变量中
- javascript - React:更新数组道具不会触发 useEffect 钩子
- javascript - 单击按钮时尝试计算成本 - 值未更新
- node.js - 使用 mongoose Schema 为已声明的 MongoDB 对象添加值