v0.14.0 — 性能:手势直写相机 + turn 数据缓存
两处结构性优化,卡顿不再依赖图的大小:
手势相机直写 DOM:滚轮平移/捏合不再逐事件触发 React 重渲染(此前每个滚轮事件都要重建+diff ~250 个 SVG 元素树)。transform 直写 svg.style,160ms 空闲后一次性提交回状态;会话直播 flush 打断手势也不会回跳(camRef 以手势为权威、渲染从 camRef 取值);fit/复位会取消未决手势。手感与 v0.13.2 完全一致(反向平移、1.8x 捏合、纯净捕获)。
collectTurnData 按轮缓存:检查器循环与图重建每次渲染都对全部轮次做 O(events) reduce——直播 flush 期间是纯重复税。现在 WeakMap 按轮对象缓存,并以 artifact 值对象身份校验:直播中的轮次值更新即失效重算,历史轮次永久命中。
实测:帧率 8.3ms 中位/零 24ms+ 掉帧;反向平移 240→-240、捏合 1.467 增长、双击 fit 复位(含手势 pending 打断路径)、引文/浮层/手热区/捕获回归全绿,零报错。