我正在使用html2pdf.js
在我的客户下载文件之前,我应该显示预览。
'dataurlnewwindow‘的方式可以显示预览,但下载按钮不工作。
因此,我更改了bloburl输出,并且下载按钮正在工作。
但是当我点击下载时,我想设置下载文件名。
如下所示,我不能设置下载文件名。
有人知道怎么处理吗?
这是我使用的html2pdf.js代码。
const opt = { margin: 10, filename, html2canvas: { width: 800, useCORS: true } };
html2pdf().set(opt).from(html).output('bloburl').then(r => { window.open(r) })
即使你们知道支持预览和下载的名字,请告诉我。我需要帮助
发布于 2021-04-30 20:05:54
您应该尝试在<a>
属性中设置download
标记的文件名。
html2pdf().from(html)
.set(opt)
.toPdf()
.get('pdf')
.then((pdf) => downloadPdf(pdf, options));
const downloadPdf = (pdf, opt) => {
let link = document.createElement('a');
link.target = '_blank';
link.href = pdf.output('bloburl');
link.download = 'myFileName.pdf';
link.click();
link.remove();
}
这将在一个新的选项卡页面中打开PDF,因为有了target=_blank
,并在click()
事件之后直接下载到<a>
标记元素上。
https://stackoverflow.com/questions/66864037
复制相似问题