新的Handsontable 8.1.0版本引入了对不连续的行和列的大小进行调整的支持,并改进了几个插件的性能,这对于大型数据集尤其明显。我们还扩展和重组了e2e测试代码库,并做了一些其他增强。
调整非连续行和列的大小
得益于社区成员Siddharth Bhalgami的大力帮助,这项更改才得以实现,该成员改进了我们现有的插件并创建了请求(#7162)。 这项新功能使您可以选择不相邻的行或列,并立即调整它们的大小。 在下面的动画中查看它如何工作:
性能提升
我们还致力于提高三个插件的性能:调整行、隐藏行和隐藏列。 当使用包含许多调整和隐藏索引的150万条记录的数据集时,我们显着提高了执行时间(#7223)。 当您筛选、隐藏或调整行,然后触发反向操作时,最好观察到这一点–删除筛选、显示行或不调整行。
下表显示了将此版本8.1.0与先前的8.0.0比较的平均性能提升。 我们在MacBookPro, 15″, Mid 2015, i7 2.2 GHz, macOS Catalina上使用Firefox 79对测试进行了至少5倍的迭代。数据集由10万行和15列组成。 然后用100、1k,10k和50k调整行测量渲染时间。“调整”行是在渲染网格之前隐藏的行。
对于100个调整行,性能提升开始明显。 1k调整行显示出更好的性能提升-从142.4 ms到106 ms。 10k的结果表明速度明显降低了34%,从203毫秒降低到134.4毫秒。在50k测试用例中观察到了最大的下降,以前是在1997 ms渲染,现在在136.6 ms渲染。 进一步的研究表明,对于较大的一组调整行,性能提升变得更加明显。
其他更改和修复
我们对安全性和测试进行了一些其他更改:
•copy-webpack-plugin软件包已更新为最新的主要版本,以符合安全要求。 除此更改外,还更新了其他一些依赖项。 (#7222)
•扩展了e2e测试的代码库,并对现有测试进行了重组和改进,以实现更好的可维护性。 其中大多数涉及隐藏列功能。 (#6491)
已解决的问题列表:
•修复了合并区域的第一部分被隐藏时,值不显示的问题。 (#6871)
•修复了选择左上角元素后无法调整行范围大小的问题。 (#7139)
•修复了#6871中引入的错误,并进行了一些重构。 (#7220)
•修复了使用HiddenColumns插件隐藏和显示列后,列标题被切断的问题。 (#6395)
•修复了在某些情况下在复制/粘贴操作期间添加冗余行的问题。 (#5961)
•解决了隐藏列后粘贴太多值的问题。 (#6743)
•修复了一个错误,该错误在启用NestedRows插件的情况下尝试移动折叠的父行会导致错误。 (#7132)
•修复了以下问题:如果在未定义行范围的情况下启用了ColumnSummary,则在更改列或行之后,Handsontable会引发错误。 (#7174)
•修复了在某些情况下使用updateSettings破坏列排序的问题。 (#7228)
•解决了以下问题:如果定义了fixedColumnsLeft,则使用updateSettings禁用行标题后,行的左边框会丢失。 (#5735)
•修复了Handsontable实例在垂直滚动过程中可能陷入无限循环的问题。 仅当可滚动元素是window对象时才发生。 (#7260)
•修复了启用NestedRows插件时将行移动到表的最后一行的问题。还修复了其他一些与移动有关的小错误。 (#6067)
•修复了在Safari的单元格中添加不必要的多余空行的问题。 (#7262)
•修复了在使用updateSettings之前或之内更改了剪切的列标题时出现的问题。 (#6004)
我们建议更新到8.1.0,因为它包括性能改进,这些性能改进会积极影响最终用户使用该软件的体验。
京ICP备09015132号-996 | 网络文化经营许可证京网文[2017]4225-497号 | 违法和不良信息举报电话:4006561155
© Copyright 2000-2023 北京哲想软件有限公司版权所有 | 地址:北京市海淀区西三环北路50号豪柏大厦C2座11层1105室