一种大纲视图的刷新方法、装置、设备、介质和产品与流程

摘要: 本发明涉及计算机,尤其涉及一种大纲视图的刷新方法、装置、设备、介质和产品。背景技术:1、大纲视图作为一种结构化的导航视图,以树状层级列表的方式展示文件结构,帮助...
一种大纲视图的刷新方法、装置、设备、介质和产品与流程

本发明涉及计算机,尤其涉及一种大纲视图的刷新方法、装置、设备、介质和产品。

背景技术:

1、大纲视图作为一种结构化的导航视图,以树状层级列表的方式展示文件结构,帮助用户快速定位和跳转至文件中的各级标题、类、函数或数据表等节点。

2、现有的大纲视图刷新方法中,显示模块在接收到全量节点信息后,通常在检测到任意差异时立即触发刷新操作,或直接对大纲视图进行整体更新。

3、然而,当文件节点数量较多且用户编辑频繁时,即使全量节点信息中仅有少量内容发生变化,也会导致刷新操作在短时间内多次执行,使主线程负载集中,引发界面卡顿或闪烁。

技术实现思路

1、本发明提供了一种大纲视图的刷新方法、装置、设备、介质和产品,以解决在更新大纲视图时,主线程负载集中,界面卡顿或闪烁的技术问题。

2、根据本发明的一方面,提供了一种大纲视图的刷新方法,包括:

3、获取大纲视图的全量节点信息和为文件维护的大纲数据,所述大纲视图用于以树状层级展示文件的结构,所述全量节点信息包括解析所述文件后获得的有序排列的多个第一节点数据,所述大纲数据中包含有序排列的多个第二节点数据;

4、从所述全量节点信息与所述大纲数据中依次提取多组成对节点数据,每一组所述成对节点数据包括具有相同排序位置的一个第一节点数据与一个第二节点数据;

5、针对每组所述成对节点数据,在所述成对节点数据中所述第一节点数据和所述第二节点数据存在属性差异的情况下,将所述成对节点数据内所述第二节点数据的属性更新为所述成对节点数据内所述第一节点数据的属性,在所述成对节点数据中所述第一节点数据和所述第二节点数据存在可视数据的差异的情况下,将所述成对节点数据中的所述第二节点数据添加至待更新节点集合中,所述可视数据包括显示在大纲视图界面上的节点数据;

6、基于所述全量节点信息和所述大纲数据中剩余节点数据,更新所述大纲数据,并将所述剩余节点数据,添加至所述待更新节点集合中,所述剩余节点包括所述全量节点信息和所述大纲数据中未形成所述成对节点数据的节点数据;

7、基于所述待更新节点集合,执行所述大纲视图的刷新。

8、根据本发明的另一方面,提供了一种大纲视图的刷新装置,包括:

9、获取模块,获取大纲视图的全量节点信息和为文件维护的大纲数据,所述大纲视图用于以树状层级展示文件的结构,所述全量节点信息包括解析所述文件后获得的有序排列的多个第一节点数据,所述大纲数据中包含有序排列的多个第二节点数据;

10、提取模块,从所述全量节点信息与所述大纲数据中依次提取多组成对节点数据,每一组所述成对节点数据包括具有相同排序位置的一个第一节点数据与一个第二节点数据;

11、更新模块,针对每组所述成对节点数据,在所述成对节点数据中所述第一节点数据和所述第二节点数据存在属性差异的情况下,将所述成对节点数据内所述第二节点数据的属性更新为所述成对节点数据内所述第一节点数据的属性,在所述成对节点数据中所述第一节点数据和所述第二节点数据存在可视数据的差异的情况下,将所述成对节点数据中的所述第二节点数据添加至待更新节点集合中,所述可视数据包括显示在大纲视图界面上的节点数据;

12、添加模块,基于所述全量节点信息和所述大纲数据中剩余节点数据,更新所述大纲数据,并将所述剩余节点数据,添加至所述待更新节点集合中,所述剩余节点包括所述全量节点信息和所述大纲数据中未形成所述成对节点数据的节点数据;

13、刷新模块,基于所述待更新节点集合,执行所述大纲视图的刷新。

14、根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:

15、至少一个处理器;以及

16、与所述至少一个处理器通信连接的存储器;其中,

17、所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的方法。

18、根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的方法。

19、根据本发明的另一方面,提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序在被处理器执行时实现本发明任一实施例所述的方法。

20、本发明实施例提供的大纲视图的刷新方法,通过将全量节点信息与为文件维护的大纲数据按相同排序位置提取成对节点数据进行逐对比较,在存在属性差异时更新大纲数据、在存在可视数据差异时将节点添加至待更新节点集合,并基于待更新节点集合执行刷新,本发明在更新的过程中,通过将存在可视数据差异的节点添加至待更新节点集合,实现了节点的过滤,然后基于待更新节点集合执行刷新,降低了刷新时使用的数据量,解决了对大纲视图整体刷新导致的主线程负载集中,引发界面卡顿或闪烁的技术问题,达到了降低刷新频率、减轻主线程负担、避免界面卡顿或闪烁的技术效果。

21、应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。

1.一种大纲视图的刷新方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述针对每组所述成对节点数据,在所述成对节点数据中所述第一节点数据和所述第二节点数据存在属性差异的情况下,将所述成对节点数据内所述第二节点数据的属性更新为所述成对节点数据内所述第一节点数据的属性,包括:

3.根据权利要求1所述的方法,其特征在于,所述在所述成对节点数据中所述第一节点数据和所述第二节点数据存在可视数据的差异的情况下,将所述成对节点数据中的所述第二节点数据添加至待更新节点集合中,包括:

4.根据权利要求3所述的方法,其特征在于,在确定所述成对节点数据的差异类型之后,还包括:

5.根据权利要求1所述的方法,其特征在于,所述基于所述全量节点信息和所述大纲数据中剩余节点数据,更新所述大纲数据,并将所述剩余节点数据,添加至所述待更新节点集合中,包括:

6.根据权利要求1所述的方法,其特征在于,所述基于所述全量节点信息和所述大纲数据中剩余节点数据,更新所述大纲数据,并将所述剩余节点数据,添加至所述待更新节点集合中,包括:

7.根据权利要求1所述的方法,其特征在于,所述基于所述待更新节点集合,执行所述大纲视图的刷新,包括:

8.根据权利要求7所述的方法,其特征在于,所述执行所述任务队列中的所述刷新任务,包括:

9.一种大纲视图的刷新装置,其特征在于,包括:

10.一种电子设备,其特征在于,所述电子设备包括:

11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-8中任一项所述的方法。

12.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-8中任一项所述的方法。