diff --git a/edc-web/app/static/js/test_op.js b/edc-web/app/static/js/test_op.js index dc6cf3b..7b52d6c 100644 --- a/edc-web/app/static/js/test_op.js +++ b/edc-web/app/static/js/test_op.js @@ -244,17 +244,30 @@ async function pollProgress() { } } - // 显示最新结果 - if (data.latest) renderLatest(data.latest); - if (data.averages) renderAverages(data.averages); - if (data.latest_wave) renderLatestWave(data.latest_wave); - if (data.records) renderRecords(data.records); + // 显示最新结果(独立 try-catch,避免一处报错影响全部) + try { if (data.latest) renderLatest(data.latest); } catch (e) { console.error("renderLatest:", e); } + try { if (data.averages) renderAverages(data.averages); } catch (e) { console.error("renderAverages:", e); } + try { if (data.latest_wave) renderLatestWave(data.latest_wave); } catch (e) { console.error("renderLatestWave:", e); } + try { if (data.records && data.records.length) renderRecords(data.records); } catch (e) { console.error("renderRecords:", e); } } catch (e) { console.error("轮询失败:", e); } } +// ─── 页面加载时获取初始数据 ────────────────────── +async function loadInitialData() { + try { + const resp = await fetch(`/api/automation/${DNT_ID}/progress`); + const data = await resp.json(); + if (data.latest) renderLatest(data.latest); + if (data.latest_wave) renderLatestWave(data.latest_wave); + } catch (e) { + // 初始加载静默失败 + } +} +loadInitialData(); + // ─── UI ──────────────────────────────────────── function setStatus(msg) {