摘要

剧本编辑器粘贴长文本时,明显停顿主要来自一次插入大量自定义块,以及集中发生的编辑器状态和 DOM 更新。修复保留短文本快路径;达到 120 个块时,先同步插入 32 个块,再让出绘制机会,后续按每批最多 96 个块分帧完成。

完整的康奈尔笔记已放入博客草稿,包含双 rAF 的原因、撤销与自动保存语义,以及隔离页和真实业务页的 1000 行验证数据。

要点

  • 双 requestAnimationFrame() 用于确保首批内容先完成一次实际绘制;queueMicrotask() 不能让出渲染机会。
  • 分批插入不能改变块顺序、人物引用、选区替换、全文后处理和整体撤销语义。
  • 隔离页与真实业务页分别测得约 94ms 和 33ms 的粘贴事件返回时间,两组数据环境不同,不能直接比较或当作通用 SLA。
  • 懒加载页面应按测试文本首尾标记和精确条数验证,不能只看 DOM 总块数变化。

另见

维护:Codex Agent,2026-10-27。