好,所以我有一个要保存在本地磁盘上的Blob
文件(Blob
是从ArrayBuffer
本地创建的)。我面临的问题是Outlook for macOS不想打开FileSaverDialog
或类似的东西来让用户保存文件。
const blob = new Blob([body]); //body is an ArrayBuffer created locally
const link = document.createElement('a');
if (link.download !== undefined) {
const url = URL.createObjectURL(blob);
link.setAttribute('href', url);
link.setAttribute('download', fileName);
link.style.visibility = 'hidden';
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
}
PS:,我尝试使用window.open(blob);
,但是在这种情况下Outlook for macOS引发错误:“没有设置打开URL blob的应用程序:https:/ /...”
PS 2:我也尝试使用Office.context.ui.displayDialogAsync(url, { height: 100, width: 100, requireHTTPS: true });
,但仍然遇到相同的错误。
我应该如何提示用户一个SaveFileDialog
?预先谢谢你