mirror of
https://ghfast.top/https://github.com/aeroxw/tick-stock-panel.git
synced 2026-09-12 19:04:15 +08:00
useEChart 的 init effect 依赖为 [] 仅组件挂载时执行一次, 而情绪周期图的 容器 div 是条件渲染 (hasPhaseData && rows.length > 0)。冷加载/硬刷新时 history 查询异步未返回 → 首帧 rows 为空 → div 不在 DOM → init 扑空且 永不再执行; 数据到达后卡片出现但 ECharts 实例从未创建, 280px 画布永久 空白 (趋势图/分布图容器为无条件渲染故不受影响)。5 分钟缓存内的二次 导航首帧即有数据, 所以表现为"时好时坏"。 修复: init 从挂载 effect 挪入 setOption effect 做惰性创建 — option 变化 时若 div 已挂载且实例不存在则补建, 再 setOption。无条件容器行为不变。 验证: tsc 通过; 新标签页冷加载 /regime 实测 — canvas 数 3 (修复前冷加载 该图为 0), 情绪周期画布 1254x280, 截图确认红线/琥珀柱/蓝虚线/图例/ 双轴刻度/缩放滑块/阶段色带全部渲染 (gui-test-screenshots/regime-phase- chart-after-fix.png)。