数据处理方法、装置、电子设备及计算机可读存储介质与流程

文档序号:29863333发布日期:2022-04-30 11:53阅读:74来源:国知局
数据处理方法、装置、电子设备及计算机可读存储介质与流程

1.本技术涉及计算机技术领域,具体而言,本技术涉及一种数据处理方法、装置、电子设备及计算机可读存储介质。


背景技术:

2.对于具有特定结构的结构化数据,例如线性结构数据、树形结构数据、图形结构数据等等,由于上述结构化数据中的节点之间存在相互关系,例如,线性结构数据中的数据节点存在一对一的相互关系;树形结构数据中的数据节点存在一对多的相互关系;图形结构数据中的数据节点存在多对多的相互关系。在这种情况下,对上述结构化数据进行交互操作时,通常需要对结构化数据进行全量计算(即全部节点的运算),由于全量运算的运算量极大,容易导致系统卡顿等问题。


技术实现要素:

3.本技术的目的旨在至少能解决上述的技术缺陷之一,特别是对结构化数据进行交互操作时,运算量大的技术缺陷。
4.根据本技术的一个方面,提供了一种数据处理方法,该方法包括:
5.接收对目标结构数据进行第一操作的触发操作,确定所述第一操作对应的目标节点;其中,所述目标节点为所述目标结构数据中的节点;
6.获取所述目标节点的第一数据描述信息;其中,所述第一数据描述信息包括所述目标节点的数据信息以及所述目标节点之间的第一关系信息;
7.基于所述第一数据描述信息,对所述目标节点执行所述第一操作。
8.可选的,所述目标结构数据中的至少两个所述节点之间存在父子关系;其中,存在所述父子关系的两个所述节点中,当父节点为折叠状态时,所述父节点的子节点被隐藏。
9.可选的,在所述第一操作包括滚动操作的情况下,所述确定所述第一操作对应的目标节点,包括:
10.确定第一节点;所述第一节点包括所述滚动操作后,显示界面中显示的第一个展示节点;所述滚动操作用于在显示界面中滚动显示所述展示节点;所述展示节点包括所述目标结构数据中未隐藏的所述节点;
11.确定所述显示界面中显示所述展示节点的第一节点数量;
12.根据所述第一节点、所述第一节点数量及所述节点标识信息,确定所述展示节点中的目标节点;其中,所述节点标识信息包括所述目标结构数据中所述展示节点的标识信息。
13.可选的,所述确定第一节点,包括:
14.确定第二节点,所述第二节点包括所述滚动操作前,显示界面中显示的第一个所述展示节点;
15.确定所述滚动操作对应的所述展示节点的第二节点数量;
16.根据所述第二节点、所述第二节点数量及所述节点标识信息,确定所述第一节点。
17.可选的,所述确定所述滚动操作对应的所述展示节点的第二节点数量,包括:
18.根据所述滚动操作的滚动条的移动像素高度以及每个所述展示节点的节点像素高度,确定所述第二节点数量。
19.可选的,所述数据信息中包括节点数据内容,所述第一关系信息中包括父子关系信息以及节点排列顺序信息,
20.所述基于所述第一数据描述信息,对所述目标节点执行所述第一操作:
21.根据所述节点排列顺序信息,确定所述目标节点在水平方向的第一排列顺序及竖直方向的第二排列顺序;
22.基于所述节点数据内容、所述第一排列顺序、所述第二排列顺序及所述父子关系信息,在显示界面中,显示所述目标节点。
23.可选的,所述节点排列顺序信息中包括所述目标节点在水平方向上的缩进量,
24.确定所述目标节点在水平方向的第一排列顺序,包括:
25.根据所述目标节点的在水平方向上的缩进量,确定所述第一排列顺序。
26.可选的,所述节点排列顺序信息中包括所述目标节点在竖直方向上的排列顺序,
27.确定所述目标节点在竖直方向的第二排列顺序,包括:
28.根据所述目标节点在竖直方向上的排列顺序,确定所述第二排列顺序。
29.可选的,在所述第一操作包括第一展开操作的情况下,所述确定所述第一操作对应的目标节点,包括:
30.获取所述节点的状态信息;
31.根据所述节点的状态信息,确定处于折叠状态的目标节点;所述第一展开操作包括展开所述目标结构数据中所有处于折叠状态的所述节点。
32.可选的,在所述第一操作包括第一折叠操作的情况下,所述确定所述第一操作对应的目标节点,包括:
33.获取所述节点的状态信息;
34.根据所述节点的状态信息,确定处于展开状态的目标节点;所述第一折叠操作包括折叠所述目标结构数据中所有处于展开状态的所述节点。
35.可选的,所述基于所述第一数据描述信息,对所述目标节点执行所述第一操作,包括:
36.接收对所述目标节点的目标状态信息进行修改的修改信息;所述第一数据描述信息中包括所述目标状态信息;
37.基于所述修改信息,显示所述目标节点。
38.根据本技术的另一个方面,提供了一种数据处理装置,该装置包括:
39.确定模块,用于接收对目标结构数据进行第一操作的触发操作,确定所述第一操作对应的目标节点;其中,所述目标节点为所述目标结构数据中的节点;
40.获取模块,用于获取所述目标节点的第一数据描述信息;其中,所述第一数据描述信息包括所述目标节点的数据信息以及所述目标节点之间的第一关系信息;
41.执行模块,用于基于所述第一数据描述信息,对所述目标节点执行所述第一操作。
42.根据本技术的另一个方面,提供了一种电子设备,该电子设备包括:
43.一个或多个处理器;
44.存储器;
45.一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于:执行本技术的第一方面任一项所述的数据处理方法。
46.例如,本技术的第三方面,提供了一种计算设备,包括:处理器、存储器、通信接口和通信总线,处理器、存储器和通信接口通过通信总线完成相互间的通信;
47.存储器用于存放至少一可执行指令,可执行指令使处理器执行如本技术的第一方面所示的数据处理方法对应的操作。
48.根据本技术的再一个方面,提供了一种计算机可读存储介质,所述计算机程序被处理器执行时实现本技术的第一方面任一项所述的数据处理方法。
49.例如,本技术实施例的第四方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现本技术第一方面所示的数据处理方法。
50.根据本技术的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述第一方面的各种可选实现方式中提供的方法。
51.本技术提供的技术方案带来的有益效果是:
52.本技术实施例中,通过接收对目标结构数据进行第一操作的触发操作,确定所述第一操作对应的目标节点;获取所述目标节点的第一数据描述信息;基于所述第一数据描述信息,对所述目标节点执行所述第一操作;由于所述第一数据描述信息包括所述目标节点的数据信息以及所述目标节点之间的第一关系信息;这样,可以基于所述第一数据描述信息,对所述目标节点执行所述第一操作,无需对目标结构数据的全量数据进行运算,从而提高了执行第一操作时的运算效率,避免大量数据运算而造成的卡顿等问题。
附图说明
53.为了更清楚地说明本技术实施例中的技术方案,下面将对本技术实施例描述中所需要使用的附图作简单地介绍。
54.图1为本技术实施例提供的一种数据处理方法的系统架构图;
55.图2为本技术实施例提供的一种数据处理方法的流程示意图;
56.图3为本技术实施例提供的一种数据处理方法的应用场景示意图;
57.图4为本技术实施例提供的一种数据处理方法的应用场景示意图;
58.图5为本技术实施例提供的一种数据处理方法的应用场景示意图;
59.图6为本技术实施例提供的一种数据处理方法的应用场景示意图;
60.图7为本技术实施例提供的一种数据处理装置的结构示意图;
61.图8为本技术实施例提供的一种数据处理的电子设备的结构示意图。
具体实施方式
62.下面结合本技术中的附图描述本技术的实施例。应理解,下面结合附图所阐述的实施方式,是用于解释本技术实施例的技术方案的示例性描述,对本技术实施例的技术方案不构成限制。
63.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本技术实施例所使用的术语“包括”以及“包含”是指相应特征可以实现为所呈现的特征、信息、数据、步骤、操作、元件和/或组件,但不排除实现为本技术领域所支持其他特征、信息、数据、步骤、操作、元件、组件和/或它们的组合等。应该理解,当我们称一个元件被“连接”或“耦接”到另一元件时,该一个元件可以直接连接或耦接到另一元件,也可以指该一个元件和另一元件通过中间元件建立连接关系。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的术语“和/或”指示该术语所限定的项目中的至少一个,例如“a和/或b”可以实现为“a”,或者实现为“b”,或者实现为“a和b”。
64.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施方式作进一步地详细描述。
65.下面以具体地实施例对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。
66.以下结合图1对本技术实施例的系统架构进行说明,图1是本技术实施例提供的一种系统架构示意图。如图1所示,该系统可以包括服务器10a以及用户终端集群,用户终端集群可以包括:用户终端10b、用户终端10c、
……
、用户终端10d,其中,用户终端集群之间可以存在通信连接,例如用户终端10b与用户终端10c之间存在通信连接,用户终端10b与用户终端10d之间存在通信连接。同时,用户终端集群中的任一用户终端可以与服务器10a存在通信连接,例如用户终端10b与服务器10a之间存在通信连接,用户终端10c与服务器10a之间存在通信连接,其中,上述的通信连接不限定连接方式,可以通过有线通信方式进行直接或间接地连接,也可以通过无线通信方式进行直接或间接地连接,还可以通过其他方式,本技术在此不做限制。
67.服务器10a通过通信连接功能为用户终端集群提供服务,服务器10a可以是数据处理的后台服务器,用户终端10b、用户终端10c、

、用户终端10d均可以通过通信连接功能连接服务器。其中,上述通信连接的网络可以通过网络可以是广域网或者局域网,又或者是二者的组合。
68.在本技术实施例中,数据处理方法,可以通过服务器10a实现,也可以通过终端设备实现。通过接收对目标结构数据进行第一操作的触发操作,确定所述第一操作对应的目标节点;获取所述目标节点的第一数据描述信息;基于所述第一数据描述信息,对所述目标节点执行所述第一操作;由于所述第一数据描述信息包括所述目标节点的数据信息以及所述目标节点之间的第一关系信息;这样,可以基于所述第一数据描述信息,对所述目标节点执行所述第一操作,无需对目标结构数据的全量数据进行运算,从而提高了执行第一操作时的运算效率,避免大量数据运算而造成的卡顿等问题。
69.可以理解的是,本技术实施例所提供的方法可以由计算机设备执行,计算机设备
包括但不限于终端(也包括上述的用户终端)或服务器(也包括上述的服务器10a)。上述服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。上述终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本技术在此不做限制。
70.其中,图1中的服务器10a、用户终端10b、用户终端10c以及用户终端10d可以包括手机、平板电脑、笔记本电脑、掌上电脑。
71.本技术实施例提供了一种数据处理方法,该方法的执行主体可以为具有数据处理能力的各种终端设备或服务器设备,也可以为集成在这些设备上的装置或芯片。如图2所示,其为本技术实施例提供的一种数据处理方法的流程示意图,该方法包括如下步骤:
72.s201:接收对目标结构数据进行第一操作的触发操作,确定所述第一操作对应的目标节点;其中,所述目标节点为所述目标结构数据中的节点。
73.可选的,本技术实施例可以应用于数据处理领域。例如,可以应用于针对目标结构数据进行数据处理的场景。
74.具体而言,目标结构数据可以包括具有特定数据结构的结构化数据。例如,目标结构数据可以包括线性结构数据(线性结构数据中的数据节点之间存在一对一的相互关系);也可以包括树形结构数据(树形结构数据中的数据节点之间存在一对多的相互关系);还可以包括图形结构数据(图形结构数据中的数据节点之间存在多对多的相互关系)。
75.可选的,本技术实施例的数据处理方法可以以目标结构数据为树形结构数据为例进行说明。
76.具体而言,树形结构数据中可以包括多个数据节点(数据节点可以简称为节点);并且节点之间存在一对多的相互关系。例如,树形结构数据中的至少两个所述节点之间可以存在父子关系。其中,存在所述父子关系的两个所述节点中,父节点的状态包括展开状态及折叠状态。当所述父节点为展开状态时,显示所述父节点的子节点;当所述父节点为折叠状态时,所述父节点的子节点被隐藏。
77.作为示例,结合图3所示的树形结构数据,图中节点标识为“a”(即id为“a”)的节点,与节点标识为“b”(即uuid为“b”)的节点之间存在父子关系;其中,节点“a”为节点“b”的父节点;节点“b”为节点“a”的子节点。
78.此外,父子关系还可以通过节点位置缩进来体现,例如,在上述示例中,节点“b”作为子节点,节点“b”的位置在节点“a”位置的基础上进行了缩进,以此体现节点“a”与节点“b”之间的父子关系。
79.此外,在实际场景中,在存在父子关系的节点中,父节点可以标识有相应的状态图标,通过状态图标来展示父节点的状态,其中,父节点的状态包括展开状态及折叠状态。状态图标可以包括三角形图标等等。例如,结合图4所示,节点“abc”的三角形图标对应的状态为展开状态;节点“folder”的三角形图标对应的状态为折叠状态。
80.目标节点可以包括第一操作对应的节点。其中,第一操作可以包括节点展开操作、节点折叠操作、滚动操作等交互操作。
81.具体而言,节点展开操作可以包括展开处于折叠状态的节点;其中,节点展开操作可以包括展开一个节点的操作,也可以包括展开多个节点的操作。节点展开操作可以通过点击节点的状态图标来触发。也就是说,节点展开操作对应的触发操作可以包括点击节点的状态图标等操作。
82.节点折叠操作可以包括折叠处于展开状态的节点;其中,节点折叠操作可以包括折叠一个节点的操作,也可以包括折叠多个节点的操作。节点折叠操作可以通过点击节点的状态图标来触发。也就是说,节点折叠操作对应的触发操作可以包括点击节点的状态图标等操作。
83.滚动操作可以包括滚动展示节点的操作。可以理解的是,本技术实施例中,滚动展示的节点为处于展开状态的节点。在实际场景中,滚动操作可以通过移动滚动条等操作来触发。也就是说,滚动操作对应的触发操作可以包括移动滚动条等操作。
84.s202:获取所述目标节点的第一数据描述信息;其中,所述第一数据描述信息包括所述目标节点的数据信息以及所述目标节点之间的第一关系信息。
85.第一数据描述信息为目标节点对应的数据描述信息。可选的,第一数据描述信息中可以包括所述目标节点的数据信息、所述目标节点之间的第一关系信息等等。此外,在一些实施例中,第一数据描述信息中还可以包括所述目标节点与其他非目标节点之间的第二关系信息等等。
86.其中,所述目标节点的数据信息可以包括目标节点的标识信息、目标节点的数据内容、目标节点的数据属性、目标节点的节点状态(节点状态例如展开状态或者折叠状态)等等。
87.所述目标节点之间的第一关系信息用于描述目标节点之间的关系。具体而言,第一关系信息中可以包括目标节点之间的父子关系信息,例如,父子关系信息中可以包括父节点信息、子节点信息等等。此外,第一关系信息中还可以包括目标节点之间的位置信息,例如,位置信息可以包括目标节点在水平方向的排列顺序信息以及目标节点在竖直方向的排列顺序信息等等。其中,目标节点在水平方向的排列顺序信息可以为目标节点的缩进量信息。
88.所述目标节点与其他非目标节点之间的第二关系信息用于描述目标节点与非目标节点之间的关系。具体而言,第二关系信息中可以包括目标节点与非目标节点之间的父子关系信息,例如,父子关系信息中可以包括父节点信息、子节点信息等等。此外,第二关系信息中还可以包括目标节点与非目标节点之间的位置信息,例如,位置信息可以包括目标节点与非目标节点在水平方向的排列顺序信息,以及目标节点与非目标节点在竖直方向的排列顺序信息等等。其中,目标节点与非目标节点在水平方向的排列顺序信息可以为目标节点及非目标节点分别对应的缩进量信息。
89.需要说明的是,第一数据描述信息为目标节点对应的数据描述信息。本技术实施例中,为便于描述目标结构数据,目标结构数据中的节点均对应相应的数据描述信息。所述节点对应的数据描述信息与所述目标节点的第一数据描述信息所包含的内容类似,在此不做赘述。因此,可以理解的是,本技术实施例中,可以通过节点的数据描述信息来描述目标结构数据,这样,针对包含大量节点并且结构复杂的目标结构数据,通过数据描述信息可以清楚并快速的定位目标结构数据中的目标节点以及确定目标结构数据中节点的关系等等。
90.s203:基于所述第一数据描述信息,对所述目标节点执行所述第一操作。
91.具体的,本技术实施例中,目标结构数据为具有特定结构的结构化数据,例如线性结构数据、树形结构数据、图形结构数据等等。由于上述结构化数据中的节点之间存在相互关系,例如,线性结构数据中的数据节点存在一对一的相互关系;树形结构数据中的数据节点存在一对多的相互关系;图形结构数据中的数据节点存在多对多的相互关系;也就是说,目标结构数据中的节点可能是相互嵌套的。在这种情况下,在对目标结构数据执行第一操作时,通常需要对目标结构数据进行全量计算(即全部节点的运算),由于全量运算的运算量极大,从而导致系统卡顿等问题。
92.而本技术实施例中,通过接收对目标结构数据进行第一操作的触发操作,确定所述第一操作对应的目标节点;获取所述目标节点的第一数据描述信息;基于所述第一数据描述信息,对所述目标节点执行所述第一操作;由于所述第一数据描述信息包括所述目标节点的数据信息以及所述目标节点之间的第一关系信息;这样,可以基于所述第一数据描述信息,对所述目标节点执行所述第一操作,无需对目标结构数据的全量数据进行运算,从而提高了执行第一操作时的运算效率,避免大量数据运算而造成的卡顿等问题。
93.在本技术的另一个实施例中,所述目标结构数据中的至少两个所述节点之间存在父子关系;其中,存在所述父子关系的两个所述节点中,当父节点为折叠状态时,所述父节点的子节点被隐藏。
94.具体的,本技术实施例可以以目标结构数据为树形结构数据为例进行说明。树形结构数据中的至少两个所述节点之间可以存在父子关系。其中,存在所述父子关系的两个所述节点中,父节点的状态包括展开状态及折叠状态。当所述父节点为展开状态时,显示所述父节点的子节点;当所述父节点为折叠状态时,所述父节点的子节点被隐藏。
95.在本技术的另一个实施例中,在所述第一操作包括滚动操作的情况下,所述确定所述第一操作对应的目标节点,包括:
96.确定第一节点;所述第一节点包括所述滚动操作后,显示界面中显示的第一个展示节点;所述滚动操作用于在显示界面中滚动显示所述展示节点;所述展示节点包括所述目标结构数据中未隐藏的所述节点;
97.确定所述显示界面中显示所述展示节点的第一节点数量;
98.根据所述第一节点、所述第一节点数量及所述节点标识信息,确定所述展示节点中的目标节点;其中,所述节点标识信息包括所述目标结构数据中所述展示节点的标识信息。
99.本技术实施例中,所述滚动操作用于在显示界面中滚动显示所述展示节点。其中,所述展示节点所述目标结构数据中未隐藏的所述节点。
100.在一个示例中,所述目标结构数据中的至少两个所述节点之间存在父子关系,当父节点为折叠状态时,所述父节点的子节点被隐藏。在该具体情形下,确定第一操作包括滚动操作,确定第一操作对应的目标节点。确定第一操作包括滚动操作以及第一操作对应的目标节点的具体步骤可参照上述实施例。
101.结合图5及图6所示,其中,图5为滚动操作前的显示界面;图6为滚动操作后的显示界面。所述滚动操作可以通过移动滚动条等操作来触发。当滚动条被移动时,显示界面中可以滚动显示所述展示节点。
102.所述第一节点包括所述滚动操作后,显示界面中显示的第一个展示节点。结合图6所示,在所述滚动操作后,节点“animation”为显示界面中的第一个所述展示节点,也就是说,节点“animation”即为所述第一节点。
103.第一节点数量包括所述显示界面中显示所述展示节点的数量。具体而言,第一节点数量可以根据所述显示界面的像素高度,以及每个展示节点的节点像素高度确定。例如,当所述显示界面的像素高度为200;每个展示节点的节点像素高度为20;那么,所述显示界面中显示所述展示节点的数量为10,即第一节点数量为10。
104.所述节点标识信息包括所述目标结构数据中所述展示节点的标识信息。其中,节点标识信息可以根据所述节点的数据描述信息确定。可选的,数据描述信息中可以包括目标结构数据中所有展示节点的节点标识。例如,以下数据描述信息中包括所有展示节点的节点标识:
105.const displayarray=[
[0106]
'a',
[0107]
'b'
[0108]
];
[0109]
在上述数据描述信息中,节点'a'及节点'b'为所述展示节点。可选的,节点'a'及节点'b'在上述数据描述信息中的先后顺序,与在目标结构数据中的先后顺序一致。通过节点标识信息可以快速确定所述目标结构数据中未隐藏的所述节点。
[0110]
综上所述,根据所述第一节点、所述第一节点数量及所述节点标识信息,即可确定所述展示节点中的目标节点。例如,所述滚动操作后,显示界面中显示的第一个展示节点(即所述第一节点)为节点标识信息中对应的第6个节点;所述显示界面中显示所述展示节点的数量(即所述第一节点数量)为10;那么,滚动操作对应的目标节点,即滚动操作后显示界面显示的展示节点为第6个展示节点至第15个展示节点。进而,根据所述节点标识信息,即可确定第6个展示节点至第15个展示节点为所述目标节点。
[0111]
在本技术的另一个实施例中,可以通过以下方式,确定所述第一节点,具体可以包括:
[0112]
确定第二节点,所述第二节点包括所述滚动操作前,显示界面中显示的第一个所述展示节点;
[0113]
确定所述滚动操作对应的所述展示节点的第二节点数量;
[0114]
根据所述第二节点、所述第二节点数量及所述节点标识信息,确定所述第一节点。
[0115]
具体的,作为示例,结合图5所示,在所述滚动操作前,节点“assets”为显示界面中的第一个所述展示节点,也就是说,节点“assets”即为所述第二节点。
[0116]
第二节点数量包括所述滚动操作对应的所述展示节点的数量,在实际场景中,第二节点数量可以为滚动条移动时,对应滚动的所述展示节点的数量。
[0117]
在本技术的另一个实施例中,可以通过以下方式,确定所述第二节点数量,具体可以包括:
[0118]
根据所述滚动操作的滚动条的移动像素高度以及每个所述展示节点的节点像素高度,确定所述第二节点数量。
[0119]
所述移动像素高度包括滚动条移动的像素高度。节点像素高度包括每个展示节点
的像素高度。
[0120]
也就是说,可以根据所述移动像素高度以及节点像素高度,确定滚动条移动时,对应滚动的所述展示节点的数量。例如,在实际场景中,所述滚动条的移动像素高度为100;每个展示节点的节点像素高度为20;那么,滚动条移动时,对应滚动的所述展示节点的数量为100/20=5,即所述第二节点数量为5。
[0121]
在本技术的另一个实施例中,所述数据信息中包括节点数据内容,所述第一关系信息中包括父子关系信息以及节点排列顺序信息,
[0122]
所述基于所述第一数据描述信息,对所述目标节点执行所述第一操作:
[0123]
根据所述节点排列顺序信息,确定所述目标节点在水平方向的第一排列顺序及竖直方向的第二排列顺序;
[0124]
基于所述节点数据内容、所述第一排列顺序、所述第二排列顺序及所述父子关系信息,在所述显示界面中,显示所述目标节点。
[0125]
具体的,本技术实施例中,在确定目标节点后,可以根据第一数据描述信息,显示所述目标节点。
[0126]
所述第一数据描述信息包括所述目标节点的数据信息以及所述目标节点之间的第一关系信息。其中,所述数据信息中包括节点数据内容,所述第一关系信息中包括父子关系信息以及节点排列顺序信息。
[0127]
例如,作为示例,假设目标节点为节点a、节点b、节点c、节点d。其中,数据信息中的节点数据内容可以如以下信息所示:
[0128]
const idtonode={
[0129]
a:{
[0130]
id:'a',
[0131]
name:'a',
[0132]
},
[0133]
b:{
[0134]
id:'b',
[0135]
name:'b',
[0136]
},
[0137]
c:{
[0138]
id:'c',
[0139]
name:'c',
[0140]
},
[0141]
d:{
[0142]
id:'d',
[0143]
name:'d',
[0144]
},
[0145]
};
[0146]
如以上数据信息所示,其中,节点a的节点数据内容为“a”,即name:'a';节点b的节点数据内容为“b”,即name:'b'等等。通过提取节点数据内容作为数据的键值,可快速索引
到单条数据对象,便于数据的提取和修改。
[0147]
又如,第一关系信息中的父子关系信息可以如以下信息所示:
[0148]
const idtochildren={
[0149]
a:['b','c'],
[0150]
b:[],
[0151]
c:['d'],
[0152]
d:[],
[0153]
};
[0154]
如以上父子关系信息所示,其中,节点a的子节点为节点b和节点c;节点c的子节点为节点d。
[0155]
此外,第一关系信息中的父子关系信息还可以包括以下信息:
[0156]
const idtoparent={
[0157]
a:[],
[0158]
b:['a'],
[0159]
c:['a'],
[0160]
d:['c'],
[0161]
};
[0162]
如以上父子关系信息所示,其中,节点b的父节点为节点a;节点c的父节点为节点a;节点d的父节点为节点c。
[0163]
通过父子关系信息可以快速索引到任意一层级数据的父节点或子节点,实现了单条数据的双向查找,解决了数据需要向上溯源的需求,省去了递归查找的开销,提升了运算的效率。
[0164]
在本技术的另一个实施例中,所述节点排列顺序信息中包括所述目标节点在水平方向上的缩进量。可以通过以下方式确定所述目标节点在水平方向的第一排列顺序,具体包括:
[0165]
根据所述目标节点在水平方向上的缩进量,确定所述第一排列顺序。
[0166]
例如,所述目标节点在水平方向上的缩进量可以如以下信息所示:
[0167]
const idtodepth={
[0168]
a:0,
[0169]
b:1,
[0170]
c:1,
[0171]
d:2,
[0172]
};
[0173]
如上述信息所示,其中,节点a的缩进量为0;节点b的缩进量为1个单位缩进量(其中,单位缩进量可以为字节等);节点c的缩进量为1个单位缩进量;节点d的缩进量为2个单位缩进量。可以理解的是,通过目标节点在水平方向上的缩进量,可以确定所述目标节点在水平方向的排列顺序,即第一排列顺序。
[0174]
在本技术的另一个实施例中,所述节点排列顺序信息中包括所述目标节点在竖直方向上的排列顺序,可以通过以下方式确定所述目标节点在竖直方向的第二排列顺序,具
体包括:
[0175]
根据所述目标节点在竖直方向上的排列顺序,确定所述第二排列顺序。
[0176]
例如,目标节点在竖直方向上的排列顺序可以如以下信息所示:
[0177]
const idtoindex={
[0178]
a:0,
[0179]
b:1,
[0180]
c:2,
[0181]
d:3,
[0182]
};
[0183]
根据上述信息可以确定各目标节点在竖直方向的排列顺序。例如,0可以表示该节点位于根节点的位置,即数据结构中的第一位;以此类推,1可以表示该节点位于数据结构中的第二位等等。因此,依据上述竖直方向的排列顺序信息,节点a位于数据结构中的第一位;节点b位于数据结构中的第二位等等。因此,根据所述目标节点在竖直方向上的排列顺序,可以确定所述第二排列顺序。
[0184]
通过节点排列顺序信息可以快速确定节点在水平方向的排列顺序以及在竖直方向的排列顺序。
[0185]
综上所述,根据所述节点排列顺序信息,可以确定所述目标节点在水平方向第一排列顺序及竖直方向的第二排列顺序;基于所述节点数据内容、所述第一排列顺序、所述第二排列顺序及所述父子关系信息,可以在所述显示界面中,显示所述目标节点。
[0186]
在本技术的另一个实施例中,在所述第一操作包括第一展开操作的情况下,所述确定所述第一操作对应的目标节点,包括:
[0187]
获取所述节点的状态信息;
[0188]
根据所述节点的状态信息,确定处于折叠状态的目标节点;所述第一展开操作包括展开所述目标结构数据中所有处于折叠状态的所述节点。
[0189]
具体的,所述节点的状态可以包括展开状态或者折叠状态;所述节点的状态信息可以从节点的数据描述信息中获取。
[0190]
所述第一展开操作包括展开所述目标结构数据中所有处于折叠状态的所述节点。
[0191]
根据所述节点的状态信息,可以确定处于折叠状态的目标节点。可以理解的是,本技术实施例中,目标节点可以包括目标结构数据中所有处于折叠状态的节点。
[0192]
需要说明的是,本技术实施例的第一展开操作可以包括展开一个处于折叠状态的所述节点,也可以包括展开多个处于折叠状态的所述节点。
[0193]
在本技术的另一个实施例中,在所述第一操作包括第一折叠操作的情况下,所述确定所述第一操作对应的目标节点,包括:
[0194]
获取所述节点的状态信息;
[0195]
根据所述节点的状态信息,确定处于展开状态的目标节点;所述第一折叠操作包括折叠所述目标结构数据中所有处于展开状态的所述节点。
[0196]
具体的,所述节点的状态可以包括展开状态或者折叠状态;所述节点的状态信息可以从节点的数据描述信息中获取。
[0197]
所述第一展开操作包括折叠所述目标结构数据中所有处于展开状态的所述节点。
[0198]
根据所述节点的状态信息,可以确定处于展开状态的目标节点。可以理解的是,本技术实施例中,目标节点可以包括目标结构数据中所有处于展开状态的节点。
[0199]
需要说明的是,本技术实施例的第一折叠操作可以包括折叠一个处于展开状态的所述节点,也可以包括折叠多个处于展开状态的所述节点。
[0200]
在本技术的另一个实施例中,所述基于所述第一数据描述信息,对所述目标节点执行所述第一操作,包括:
[0201]
接收对所述目标节点的目标状态信息进行修改的修改信息;所述第一数据描述信息中包括所述目标状态信息;
[0202]
基于所述修改信息,显示所述目标节点。
[0203]
具体而言,所述目标状态信息可以包括目标节点的状态信息,例如,目标节点的状态可以包括展开状态或者折叠状态。
[0204]
本技术实施例可以接收对所述目标状态信息进行修改的修改信息,基于所述修改信息,显示所述目标节点。
[0205]
例如,针对目标节点a,其目标状态信息为“true”(其中,“true”表示目标节点的状态为展开状态)。当接收到目标节点a的修改信息为“false”时,可以基于该修改信息“false”对应的状态(其中,“false”表示目标节点的状态为折叠状态),显示目标节点,即折叠该目标节点a。
[0206]
本技术实施例中,通过接收对目标结构数据进行第一操作的触发操作,确定所述第一操作对应的目标节点;获取所述目标节点的第一数据描述信息;基于所述第一数据描述信息,对所述目标节点执行所述第一操作;由于所述第一数据描述信息包括所述目标节点的数据信息以及所述目标节点之间的第一关系信息;这样,可以基于所述第一数据描述信息,对所述目标节点执行所述第一操作,无需对目标结构数据的全量数据进行运算,从而提高了执行第一操作时的运算效率,避免大量数据运算而造成的卡顿等问题。
[0207]
本技术实施例提供了一种数据处理装置,如图7所示,该数据处理装置70可以包括:确定模块701、获取模块702以及执行模块703,其中,
[0208]
确定模块701,用于接收对目标结构数据进行第一操作的触发操作,确定所述第一操作对应的目标节点;其中,所述目标节点为所述目标结构数据中的节点;
[0209]
获取模块702,用于获取所述目标节点的第一数据描述信息;其中,所述第一数据描述信息包括所述目标节点的数据信息以及所述目标节点之间的第一关系信息;
[0210]
执行模块703,用于基于所述第一数据描述信息,对所述目标节点执行所述第一操作。
[0211]
在本技术的另一个实施例中,所述目标结构数据中的至少两个所述节点之间存在父子关系;其中,存在所述父子关系的两个所述节点中,当父节点为折叠状态时,所述父节点的子节点被隐藏。
[0212]
在本技术的另一个实施例中,在所述第一操作包括滚动操作的情况下,所述确定模块包括:
[0213]
第一确定单元,用于确定第一节点;所述第一节点包括所述滚动操作后,显示界面中显示的第一个展示节点;所述滚动操作用于在显示界面中滚动显示所述展示节点;所述展示节点包括所述目标结构数据中未隐藏的所述节点;
[0214]
第二确定单元,用于确定所述显示界面中显示所述展示节点的第一节点数量;
[0215]
第三确定单元,用于根据所述第一节点、所述第一节点数量及所述节点标识信息,确定所述展示节点中的目标节点;其中,所述节点标识信息包括所述目标结构数据中所述展示节点的标识信息。
[0216]
在本技术的另一个实施例中,第一确定单元具体用于:
[0217]
确定第二节点,所述第二节点包括所述滚动操作前,显示界面中显示的第一个所述展示节点;
[0218]
确定所述滚动操作对应的所述展示节点的第二节点数量;
[0219]
根据所述第二节点、所述第二节点数量及所述节点标识信息,确定所述第一节点。
[0220]
在本技术的另一个实施例中,第一确定单元具体用于:
[0221]
根据所述滚动操作的滚动条的移动像素高度以及每个所述展示节点的节点像素高度,确定所述第二节点数量。
[0222]
在本技术的另一个实施例中,所述数据信息中包括节点数据内容,所述第一关系信息中包括父子关系信息以及节点排列顺序信息,
[0223]
执行模块,具体用于:
[0224]
根据所述节点排列顺序信息,确定所述目标节点在水平方向的第一排列顺序及竖直方向的第二排列顺序;
[0225]
基于所述节点数据内容、所述第一排列顺序、所述第二排列顺序及所述父子关系信息,在所述显示界面中,显示所述目标节点。
[0226]
在本技术的另一个实施例中,所述节点排列顺序信息中包括所述目标节点在水平方向上的缩进量,
[0227]
执行模块,具体用于:
[0228]
根据所述目标节点在水平方向上的缩进量,确定所述第一排列顺序。
[0229]
在本技术的另一个实施例中,所述节点排列顺序信息中包括所述目标节点在竖直方向上的排列顺序,
[0230]
执行模块,具体用于:
[0231]
根据所述目标节点在竖直方向上的排列顺序,确定所述第二排列顺序。
[0232]
在本技术的另一个实施例中,在所述第一操作包括第一展开操作的情况下,所述确定模块具体用于:
[0233]
获取所述节点的状态信息;
[0234]
根据所述节点的状态信息,确定处于折叠状态的目标节点;所述第一展开操作包括展开所述目标结构数据中所有处于折叠状态的所述节点。
[0235]
在本技术的另一个实施例中,在所述第一操作包括第一折叠操作的情况下,所述确定模块具体用于:
[0236]
获取所述节点的状态信息;
[0237]
根据所述节点的状态信息,确定处于展开状态的目标节点;所述第一折叠操作包括折叠所述目标结构数据中所有处于展开状态的所述节点。
[0238]
在本技术的另一个实施例中,所述执行模块具体用于:
[0239]
接收对所述目标节点的目标状态信息进行修改的修改信息;所述第一数据描述信
息中包括所述目标状态信息;
[0240]
基于所述修改信息,显示所述目标节点。
[0241]
本技术实施例的装置可执行本技术实施例所提供的方法,其实现原理相类似,本技术各实施例的装置中的各模块所执行的动作是与本技术各实施例的方法中的步骤相对应的,对于装置的各模块的详细功能描述具体可以参见前文中所示的对应方法中的描述,此处不再赘述。
[0242]
本技术实施例中,通过接收对目标结构数据进行第一操作的触发操作,确定所述第一操作对应的目标节点;获取所述目标节点的第一数据描述信息;基于所述第一数据描述信息,对所述目标节点执行所述第一操作;由于所述第一数据描述信息包括所述目标节点的数据信息以及所述目标节点之间的第一关系信息;这样,可以基于所述第一数据描述信息,对所述目标节点执行所述第一操作,无需对目标结构数据的全量数据进行运算,从而提高了执行第一操作时的运算效率,避免大量数据运算而造成的卡顿等问题。
[0243]
本技术实施例中提供了一种电子设备,该电子设备包括:存储器和处理器;至少一个程序,存储于存储器中,用于被处理器执行时,与现有技术相比可实现:本技术实施例中,通过接收对目标结构数据进行第一操作的触发操作,确定所述第一操作对应的目标节点;获取所述目标节点的第一数据描述信息;基于所述第一数据描述信息,对所述目标节点执行所述第一操作;由于所述第一数据描述信息包括所述目标节点的数据信息以及所述目标节点之间的第一关系信息;这样,可以基于所述第一数据描述信息,对所述目标节点执行所述第一操作,无需对目标结构数据的全量数据进行运算,从而提高了执行第一操作时的运算效率,避免大量数据运算而造成的卡顿等问题。
[0244]
在一个可选实施例中提供了一种电子设备,如图8所示,图8所示的电子设备4000包括:处理器4001和存储器4003。其中,处理器4001和存储器4003相连,如通过总线4002相连。可选地,电子设备4000还可以包括收发器4004,收发器4004可以用于该电子设备与其他电子设备之间的数据交互,如数据的发送和/或数据的接收等。需要说明的是,实际应用中收发器4004不限于一个,该电子设备4000的结构并不构成对本技术实施例的限定。
[0245]
处理器4001可以是cpu(central processing unit,中央处理器),通用处理器,dsp(digital signal processor,数据信号处理器),asic(application specific integrated circuit,专用集成电路),fpga(field programmable gate array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本技术公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器4001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。
[0246]
总线4002可包括一通路,在上述组件之间传送信息。总线4002可以是pci(peripheral component interconnect,外设部件互连标准)总线或eisa(extended industry standard architecture,扩展工业标准结构)总线等。总线4002可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0247]
存储器4003可以是rom(read only memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,ram(random access memory,随机存取存储器)或者可存储
信息和指令的其他类型的动态存储设备,也可以是eeprom(electrically erasable programmable read only memory,电可擦可编程只读存储器)、cd-rom(compact disc read only memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
[0248]
存储器4003用于存储执行本技术方案的应用程序代码(计算机程序),并由处理器4001来控制执行。处理器4001用于执行存储器4003中存储的应用程序代码,以实现前述方法实施例所示的内容。
[0249]
其中,电子设备包括但不限于:移动电话、笔记本电脑、多媒体播放器、台式计算机等。
[0250]
本技术实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。
[0251]
本技术实施例中,通过接收对目标结构数据进行第一操作的触发操作,确定所述第一操作对应的目标节点;获取所述目标节点的第一数据描述信息;基于所述第一数据描述信息,对所述目标节点执行所述第一操作;由于所述第一数据描述信息包括所述目标节点的数据信息以及所述目标节点之间的第一关系信息;这样,可以基于所述第一数据描述信息,对所述目标节点执行所述第一操作,无需对目标结构数据的全量数据进行运算,从而提高了执行第一操作时的运算效率,避免大量数据运算而造成的卡顿等问题。
[0252]
本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”、“1”、“2”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除图示或文字描述以外的顺序实施。
[0253]
应该理解的是,虽然本技术实施例的流程图中通过箭头指示各个操作步骤,但是这些步骤的实施顺序并不受限于箭头所指示的顺序。除非本文中有明确的说明,否则在本技术实施例的一些实施场景中,各流程图中的实施步骤可以按照需求以其他的顺序执行。此外,各流程图中的部分或全部步骤基于实际的实施场景,可以包括多个子步骤或者多个阶段。这些子步骤或者阶段中的部分或全部可以在同一时刻被执行,这些子步骤或者阶段中的每个子步骤或者阶段也可以分别在不同的时刻被执行。在执行时刻不同的场景下,这些子步骤或者阶段的执行顺序可以根据需求灵活配置,本技术实施例对此不限制。
[0254]
以上所述仅是本技术部分实施场景的可选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术的方案技术构思的前提下,采用基于本技术技术思想的其他类似实施手段,同样属于本技术实施例的保护范畴。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1