# 需求分析 — 2026-04-16-18-51-06 ## 原始需求摘要 在 `/report-editor` 页面中进行操作后,离开该页面(例如进入 `/report-manage`),再返回 `/report-editor` 时,**视频分析相关数据丢失**,具体表现为: 1. 自动关键帧摘取的图片消失; 2. 自动/手动拖拽到报告 `image-placeholder` 上的视频截图消失; 3. 手动截取的视频截图消失。 报告的基本信息(患者姓名、住院号等)保存正常。 ## 需求拆解 ### 功能点 - 修复路由切换后 `capturedFrames`(关键帧/截图)数据丢失的问题; - 修复路由切换后 `videos`(已上传视频列表)数据丢失的问题; - 确保 `stateRef.current` 与 React state 在数据恢复后保持同步; - 确保组件卸载时保存的 draft 包含完整的视频分析数据。 ### 非功能点 - 保持现有 localStorage 存储机制不变; - 最小化代码改动,避免引入新的状态管理库; - 不破坏现有报告保存/打印/模板切换等功能。 ## 影响范围预估 | 模块 | 影响程度 | 说明 | |------|---------|------| | `src/pages/ReportEditor.tsx` | 高 | 初始化逻辑、`useLayoutEffect` 安全网、`stateRef` 同步 | | `src/utils/storage.ts` | 无 | 不涉及修改 | | 其他页面 | 低 | 仅受 `/report-editor` 数据恢复正确性影响 | ## 待确认问题 无。问题现象明确,根因已定位。