From 75e0268a350db51c723d333c170ff5d43c0440af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E8=BF=9B?= Date: Mon, 27 Jul 2026 14:25:37 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=8A=A0=E5=9B=9E=20saveAs=EF=BC=8C?= =?UTF-8?q?=E4=B8=8D=E8=87=AA=E5=8A=A8=E5=85=B3=E9=97=AD=20popup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web-to-ppt/popup.js | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/web-to-ppt/popup.js b/web-to-ppt/popup.js index 5c47bd1..9ba8b12 100644 --- a/web-to-ppt/popup.js +++ b/web-to-ppt/popup.js @@ -105,20 +105,19 @@ async function exportPptx() { setProgress(90, '正在打包...'); const blob = await WebToPPT.schemaToPptxBlob(schema); - // 5. 下载(不弹对话框,直接下载到默认文件夹) + // 5. 下载(弹出保存对话框) setProgress(95, '正在下载...'); const url = URL.createObjectURL(blob); const title = jsonData.source?.title || 'webpage'; const safeTitle = title.replace(/[\\/:*?"<>|]+/g, '-').replace(/\s+/g, '-').slice(0, 64) || 'webpage'; const filename = `web-to-ppt/${safeTitle}-${Date.now()}.pptx`; - const downloadId = await chrome.downloads.download({ url, filename }); - // 等下载完成后再 revoke - setTimeout(() => URL.revokeObjectURL(url), 30000); + await chrome.downloads.download({ url, filename, saveAs: true }); + setTimeout(() => URL.revokeObjectURL(url), 60000); setProgress(100, `已导出:${filename}`); setResult('success', '导出完成'); - setTimeout(() => window.close(), 1500); + // 不自动关闭 popup,等用户选完保存位置 } catch (error) { setProgress(0, error.message || String(error));