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));