我想在 blob 的 createObjectURL 中设置自定义文件名。现在,它显示的是这样的:
const data = window.URL.createObjectURL(newBlob);
const pdfWindow = window.open();
pdfWindow.location.href = data;
我不想下载该文件(其解决方案已存在于 StackOverflow 上),应该在新选项卡中打开它。
参考 Set tab title on javascript window.open to show PDF file 和 Set title in the window popup 的答案,我使用以下解决方案进行了测试,这些解决方案在大多数浏览器上运行良好。
const data = window.URL.createObjectURL(newBlob);
const pdfWindow = window.open();
pdfWindow.location.href = data;
fileTitle = "hello-world.pdf";
// Set the window title
pdfWindow.document.title = fileTitle;
// Make sure that the window is loaded
pdfWindow.onload = () => {
// And then add a timeout to guarentee the title is changed
setTimeout(() => {
newWindow.document.title = fileTitle;
}, 500)
}