fix: 不用 saveAs,直接下载到默认文件夹

Chrome Bug 417112:saveAs 在'下载前询问'开启时不可靠。
这是 Chrome 扩展的已知限制,官方无解决方案。
This commit is contained in:
李进
2026-07-27 15:25:26 +08:00
parent 0ce890f45e
commit 00b3150d1c
2 changed files with 2 additions and 2 deletions
+1 -1
View File
@@ -177,7 +177,7 @@ chrome.runtime.onMessage.addListener((message, sender, sendResponse) => {
const stored = await chrome.storage.session.get(['pptxBase64', 'pptxFilename']); const stored = await chrome.storage.session.get(['pptxBase64', 'pptxFilename']);
if (!stored.pptxBase64) throw new Error('没有待下载的数据'); if (!stored.pptxBase64) throw new Error('没有待下载的数据');
const dataUrl = 'data:application/vnd.openxmlformats-officedocument.presentationml.presentation;base64,' + stored.pptxBase64; const dataUrl = 'data:application/vnd.openxmlformats-officedocument.presentationml.presentation;base64,' + stored.pptxBase64;
await chrome.downloads.download({ url: dataUrl, filename: stored.pptxFilename, saveAs: true }); await chrome.downloads.download({ url: dataUrl, filename: stored.pptxFilename });
await chrome.storage.session.remove(['pptxBase64', 'pptxFilename']); await chrome.storage.session.remove(['pptxBase64', 'pptxFilename']);
return { ok: true }; return { ok: true };
})() })()
+1 -1
View File
@@ -95,7 +95,7 @@ async function exportPptx() {
if (!dlResult || !dlResult.ok) throw new Error(dlResult?.error || '下载失败'); if (!dlResult || !dlResult.ok) throw new Error(dlResult?.error || '下载失败');
setProgress(100, '导出完成'); setProgress(100, '导出完成');
setResult('success', '导出完成'); setResult('success', '已下载到 Downloads/web-to-ppt/');
} catch (error) { } catch (error) {
setProgress(0, error.message || String(error)); setProgress(0, error.message || String(error));