Skip to content
目录

数据模型架构

数据层以 Unit(文档实例) 为核心:Workbook / Document / Slide 继承 UnitModel,对外暴露 Snapshot 用于持久化与协同。


1. 文档类型

模型核心结构(概念)
WorkbookSheets、行列、单元格矩阵
Document块、段落、富文本
Slide页、形状、布局

2. UnitModel 与 Snapshot

  • Snapshot:可 JSON 化的完整状态描述(或增量补丁格式,视版本)。
  • 加载createUnit / 从 snapshot 恢复。
  • 保存:导出 snapshot 给后端或协同服务。

3. 稀疏存储

大表不对空单元格全量存对象;常用 稀疏矩阵 / 树 结构,按「有数据的区域」存储,降低内存。


4. 样式

  • 样式与单元格数据分离(样式表 + 引用 id),减少重复。
  • 行列默认样式继承链:行 → 列 → 单元格。

5. ViewModel

渲染与交互用的派生视图(合并区域布局、可见区缓存等),可由 Model 变更事件重建,不当作权威数据源


6. 数据流

text
用户操作 → COMMAND → MUTATION → UnitModel 更新 → 事件 → ViewModel/渲染刷新

7. 校验与业务规则

数据验证、条件格式等多以插件 + Command 实现,规则配置在 Model 或独立 Service。


8. 总结

Snapshot 是真相来源;协同、导入导出、Undo 都围绕 MUTATION 对 Snapshot 的变换。

MIT License.