架构级更新!SpreadJS V16.0新版本重磅发布,「新文件结构」提升性能50%

发布时间:2023/01/29 13:01 发布者:KevinChen

返回博客中心

近日,SpreadJS v16.0正式发布,推出了 SpreadJS 「新文件结构」,是近几个版本中最为重要的架构级更新,不仅大幅减少了文档体积,更是将导入导出性能平均提升了50%,为未来的协同编辑打下了架构级的基础支撑。想了解这一新特性的细节,请继续阅读以下内容:

基本功能

随着越来越多的客户使用 SpreadJS,我们收到了越来越多的大数据量复杂格式文件的用户案例。这些大的文件给产品性能带来了新的挑战。SpreadJS v16.0 版本中开始正式采用一种新的文件格式来解决这个问题。这种新的 .sjs 格式是一个压缩文件,其中包含多个较小的 JSON 文件,类似于 Excel 的 XML 结构。

这种新结构能够支持大型 Excel 文件并将它们导出为体积更小的文件。另外,如果一个Excel文件中有很多工作表,您可以实现快速地按需加载工作表。要使用这种新文件格式,您不再需要导入 ExcelIO 模块,而是导入 IO 插件即可:

<script src="plugins/gc.spread.sheets.io.xxx.js"></script>

这种新格式可以像 SpreadJS 的 SSJSON 文件一样导入和导出,一旦加载到 SpreadJS 中,它就可以作为 XLSX 文件导出到 Excel。需要注意的是,这种新格式是可选的,您仍然可以使用 .SSJSON 文件。但如果您希望得到更小的文件体积和更快的性能,那么我们建议您使用 .SJS 文件格式。

除了导出到转换为工作表的 Excel 之外,SpreadJS还支持使用 集算表(TableSheets) 打开和保存新文件格式。

性能提升

新文件格式的引入,让 SpreadJS 拥有了更高的导入导出性能和更小的文件体积,因为它摒弃了导出到 SSJSON 然后转换为 Excel 模型的方式,直接将数据添加一个压缩的 .SJS 文件中,其中包含一些较小的 SSJSON 文件,类似于 Excel XML 结构。

以前,ExcelIO Import 和 Export 本质上依赖于特殊的 JSON 和 Excel 模型来转换为 Excel XML。使用这种新格式,SpreadJS 转换为 .SJS,这是一种类似于 Excel XML 的特殊 JSON 模式,因此可以直接转换:


图片1.png

以下是比较 .SSJSON 和 .SJS 示例文件的一些性能数据:

表1.png

表2.png

除了时间改进外,新文件格式还包括文件大小改进:


表3.png

表4.png

导入导出选项

在保存或打开新的 SJS 文件时,这种新文件类型有几个不同的选项可供选择。这些包括:

导出选项

· includeBindingSource 是否包含绑定源

· includeStyles 是否包含样式

· includeFormulas 是否包含公式

· saveAsView 是否忽略格式字符串

· includeAutoMergedCells 是否包括自动合并的单元格

· includeCalcModelCache 是否包括计算引擎缓存

· includeUnusedNames 是否包括未被使用的命名信息

· includeEmptyRegionCells 是否包括空白区域

导入选项

· includeStyles 转换时是否包含样式

· includeFormulas 转换时是否包含公式

· fullRecalc 转换后是否执行计算引擎重算

· dynamicReferences 转换时是否以动态引用模式执行计算

· calcOnDemand 转换后是否按需计算公式

· includeUnusedStyles 转换时是否包括未被使用的命名信息

· openMode 导入模式

o Normal - 打开文件时,可以刷新UI和UI事件,会在特定时间点响应.

o Lazy - 打开文件时,只直接加载活动的工作表,其他工作表只有在使用时才加载.

o Incremental - 打开文件时,可以刷新UI和UI事件,并会立即响应.

还有用于导入和导出不同文件类型选项的特定选项:

· ImportXlsxOptions 导入Xlsx文件选项

· ImportSSJsonOptions 导入SSJson文件选项

· ImportCsvOptions 导入Csv文件选项

· ExportXlsxOptions 导出Xlsx文件选项

· ExportSSJsonOptions 导出SSJson文件选项

· ExportCsvOptions 导出Csv文件选项

设计器

文件 > 保存菜单下的设计器(组件和桌面)也支持这种新文件格式:

图片2.png

您也可以直接在设计器中打开这种新文件格式:

图片3.png

此外,旧文件格式可用于导入和导出,但已过时且已弃用:

图片5.png

如果您想直接体验这一新特性,请访问官方学习指南在线表格编辑器在线体验

也可以点击在线示例:SpreadJS V16 vs V15 导入 Excel 文档性能比拼,直观感受 SpreadJS V15.0 与 V16.0 版本导入 Excel 的性能提升。



SpreadJS | 下载试用

纯前端表格控件SpreadJS,兼容 450 种以上的 Excel 公式,具备“高性能、跨平台、与 Excel 高度兼容”的产品特性,备受华为、苏宁易购、天弘基金等行业龙头企业的青睐,并被中国软件行业协会认定为“中国优秀软件产品”。SpreadJS 可为用户提供类 Excel 的功能,满足表格文档协同编辑、 数据填报、 类 Excel 报表设计等业务场景需求,极大的降低企业研发成本和项目交付风险。

如下资源列表,可以为您评估产品提供帮助: