window.URL.createObjectURL 设置文件名以在新选项卡中打开 pdf

问题描述 投票:0回答:1

我想在 blob 的 createObjectURL 中设置自定义文件名。现在,它显示的是这样的:
/bfefe410-8d9c-4883-86c5-d76c50a24a1d

const data = window.URL.createObjectURL(newBlob);
const pdfWindow = window.open();
pdfWindow.location.href = data;

我不想下载该文件(其解决方案已存在于 StackOverflow 上),应该在新选项卡中打开它。

javascript url window
1个回答
0
投票

参考 Set tab title on javascript window.open to show PDF fileSet 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)
}
© www.soinside.com 2019 - 2024. All rights reserved.