我对Safari中的Blob有疑问。我有以下功能:
openTab = () => {
if (this.printGrid) {
const url = URL.createObjectURL(
new Blob([this.wrapHTMLBody(this.printGrid.innerHTML)], { type: 'text/html;charset=utf-16' })
);
// eslint-disable-next-line
window.open(url).print();
}
};
在Chrome中,此代码打开一个新标签,加载innerHTML,然后打开打印窗口。打开的HTML看起来像这样:
因此,Safari基本上将我的内容包装成标签。有谁知道为什么会这样,如果有办法解决它?我在网上找不到这个。
我可以使用文件保护程序js来保存html。但是,然后用户必须打开下载的html并手动打印它,我试图避免。任何帮助,将不胜感激。