CN111475760A - 一种序列化dom节点的方法、dom节点的渲染方法和装置 - Google Patents
一种序列化dom节点的方法、dom节点的渲染方法和装置 Download PDFInfo
- Publication number
- CN111475760A CN111475760A CN202010268560.0A CN202010268560A CN111475760A CN 111475760 A CN111475760 A CN 111475760A CN 202010268560 A CN202010268560 A CN 202010268560A CN 111475760 A CN111475760 A CN 111475760A
- Authority
- CN
- China
- Prior art keywords
- dom
- node
- nodes
- target
- child
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 78
- 238000009877 rendering Methods 0.000 title claims abstract description 46
- 238000004590 computer program Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 10
- 230000003287 optical effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Document Processing Apparatus (AREA)
Abstract
本申请提供一种序列化DOM节点的方法、DOM节点的渲染方法和装置,该方法包括:将第一页面所包含的多个第一DOM节点进行序列化;在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得组件树。这样,可以将第一页面所包含的多个第一DOM节点进行序列化。在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,可以将子节点的value值存储于第一目标DOM节点的children属性内,获得组件树。这样,在将一个页面内的DOM节点搬迁至另一个页面时,无需从数据库中的不同的位置分别获取存储父节点的表以及存储子节点的表,操作过程简单,方便快捷。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种序列化DOM节点的方法、DOM节点的渲染方法和装置。
背景技术
现有技术中,如果一个页面所包含的文档对象模型(Document Object Model,DOM)节点存在子节点,在将一个页面所包含的DOM节点存储在数据库中时,是将DOM节点中的父节点存储在一张表内,而将DOM节点中的子节点存储在另一张表内。由于存储父节点的表与存储子节点的表存放在数据库中的不同的位置,因此存储父节点的表与存储子节点的表通常会通过ID进行关联。
采用上述方式在数据库中存储一个页面所包含的DOM节点,由于存储父节点的表与存储子节点的表存放在数据库中的不同的位置,在将一个页面内的DOM节点搬迁至另一个页面时,需要从数据库中的不同的位置分别获取存储父节点的表以及存储子节点的表,操作过程比较繁琐。
发明内容
本申请提供了一种序列化DOM节点的方法、DOM节点的渲染方法和装置,以解决现有技术中,在将一个页面内的DOM节点搬迁至另一个页面时,需要从数据库中的不同的位置分别获取存储父节点的表以及存储子节点的表,操作过程比较繁琐的问题。
第一方面,本发明提供了一种序列化文档对象模型DOM节点的方法,包括:
将第一页面所包含的多个第一DOM节点进行序列化,其中,所述第一页面包含多个组件,所述多个组件中的每个组件包含至少一个第一DOM节点;
在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得组件树。
进一步的,在所述将第一页面所包含的多个第一DOM节点进行序列化的步骤之后,所述方法还包括:
判断经过序列化的多个第一DOM节点中是否存在父节点ID相同的多个第二DOM节点;
在经过序列化的多个第一DOM节点中存在父节点ID相同的多个第二DOM节点的情况下,所述在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得组件树,包括:
在所述多个第二DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得所述组件树。
进一步的,在所述将第一页面所包含的多个第一DOM节点进行序列化的步骤之后,在所述将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得组件树的步骤之前,所述方法还包括:
将经过序列化的多个第一DOM节点格式化为JSON格式;
所述在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得组件树,包括:
在经过序列化的,且格式化为所述JSON格式的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得所述组件树。
第二方面,本发明还提供了一种文档对象模型DOM节点的渲染方法,包括:
获取组件树,其中,所述组件树为在将第一页面所包含的多个第一DOM节点进行序列化之后,且在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,所获得的组件树;
递归解析所述组件树,获得所述第一目标DOM节点的value值、所述第一目标DOM节点的子节点的value值以及第二目标DOM节点的value值,其中,所述第二目标DOM节点为所述经过序列化的多个第一DOM节点中不存在子节点的第一DOM节点;
创建多个第三DOM节点;
根据所述第一目标DOM节点的value值、所述第一目标DOM节点的子节点的value值以及所述第二目标DOM节点的value值,对所述多个第三DOM节点进行渲染,获得由经过渲染的多个第三DOM节点组成的第二页面。
第三方面,本发明还提供了一种序列化文档对象模型DOM节点的装置,包括:
序列化模块,用于将第一页面所包含的多个第一DOM节点进行序列化,其中,所述第一页面包含多个组件,所述多个组件中的每个组件包含至少一个第一DOM节点;
存储模块,用于在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得组件树。
进一步的,所述装置还包括:
判断模块,用于判断经过序列化的多个第一DOM节点中是否存在父节点ID相同的多个第二DOM节点;
在经过序列化的多个第一DOM节点中存在父节点ID相同的多个第二DOM节点的情况下,所述存储模块具体用于在所述多个第二DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得所述组件树。
进一步的,所述装置还包括:
格式化模块,用于将经过序列化的多个第一DOM节点格式化为JSON格式;
所述存储模块具体用于在经过序列化的,且格式化为所述JSON格式的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得所述组件树。
第四方面,本发明还提供了一种文档对象模型DOM节点的渲染装置,包括:
获取模块,用于获取组件树,其中,所述组件树为在将第一页面所包含的多个第一DOM节点进行序列化之后,且在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,所获得的组件树;
递归解析模块,用于递归解析所述组件树,获得所述第一目标DOM节点的value值、所述第一目标DOM节点的子节点的value值以及第二目标DOM节点的value值,其中,所述第二目标DOM节点为所述经过序列化的多个第一DOM节点中不存在子节点的第一DOM节点;
创建模块,用于创建多个第三DOM节点;
渲染模块,用于根据所述第一目标DOM节点的value值、所述第一目标DOM节点的子节点的value值以及所述第二目标DOM节点的value值,对所述多个第三DOM节点进行渲染,获得由经过渲染的多个第三DOM节点组成的第二页面。
第五方面,本发明还提供了一种电子设备,包括:
存储器,用于存储程序指令;
处理器,用于调用并执行所述存储器中的程序指令,以实现第一方面所述的序列化文档对象模型DOM节点的方法。
第六方面,本发明还提供了一种可读存储介质,所述可读存储介质中存储有计算机程序,当序列化文档对象模型DOM节点的装置的至少一个处理器执行所述计算机程序时,序列化文档对象模型DOM节点的装置执行第一方面所述的序列化文档对象模型DOM节点的方法。
第七方面,本发明还提供了一种电子设备,包括:
存储器,用于存储程序指令;
处理器,用于调用并执行所述存储器中的程序指令,以实现第二方面所述的文档对象模型DOM节点的渲染方法。
第八方面,本发明还提供了一种可读存储介质,所述可读存储介质中存储有计算机程序,当文档对象模型DOM节点的渲染装置的至少一个处理器执行所述计算机程序时,文档对象模型DOM节点的渲染装置执行第二方面所述的文档对象模型DOM节点的渲染方法。
由以上技术方案可知,本发明实施例提供的一种序列化DOM节点的方法、DOM节点的渲染方法和装置,将第一页面所包含的多个第一DOM节点进行序列化,其中,所述第一页面包含多个组件,所述多个组件中的每个组件包含至少一个第一DOM节点;在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得组件树。这样,可以将第一页面所包含的多个第一DOM节点进行序列化。在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,可以将子节点的value值存储于第一目标DOM节点的children属性内,获得组件树。这样,在将一个页面内的DOM节点搬迁至另一个页面时,无需从数据库中的不同的位置分别获取存储父节点的表以及存储子节点的表,操作过程简单,方便快捷。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种序列化文档对象模型DOM节点的方法的流程图;
图2为本发明提供的一种文档对象模型DOM节点的渲染方法的流程图;
图3为本发明提供的一种序列化文档对象模型DOM节点的装置的结构图;
图4为本发明提供的另一种序列化文档对象模型DOM节点的装置的结构图;
图5为本发明提供的另一种序列化文档对象模型DOM节点的装置的结构图;
图6为本发明提供的一种文档对象模型DOM节点的渲染装置的结构图;
图7为本发明提供的一种电子设备的硬件结构示意图;
图8为本发明提供的另一种电子设备的硬件结构示意图。
具体实施方式
下面将详细地对实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下实施例中描述的实施方式并不代表与本申请相一致的所有实施方式。仅是与权利要求书中所详述的、本申请的一些方面相一致的系统和方法的示例。
参见图1,图1是本发明提供的一种序列化文档对象模型DOM节点的方法的流程图。如图1所示,包括以下步骤:
步骤101、将第一页面所包含的多个第一DOM节点进行序列化,其中,所述第一页面包含多个组件,所述多个组件中的每个组件包含至少一个第一DOM节点。
在步骤101中,可以将第一页面所包含的多个第一DOM节点进行序列化。其中,第一页面可以包含多个组件,多个组件中的每个组件可以包含至少一个第一DOM节点。
步骤102、在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得组件树。
在步骤102中,在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,可以将子节点的value值存储于第一目标DOM节点的children属性内,获得组件树。
可选的,在所述将第一页面所包含的多个第一DOM节点进行序列化的步骤之后,所述方法还包括:
判断经过序列化的多个第一DOM节点中是否存在父节点ID相同的多个第二DOM节点;
在经过序列化的多个第一DOM节点中存在父节点ID相同的多个第二DOM节点的情况下,所述在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得组件树,包括:
在所述多个第二DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得所述组件树。
需要说明的是,在将第一页面所包含的多个第一DOM节点进行序列化之后,可以判断经过序列化的多个第一DOM节点中是否存在父节点ID相同的多个第二DOM节点。如果经过序列化的多个第一DOM节点中存在父节点ID相同的多个第二DOM节点,则在多个第二DOM节点中存在具有子节点的第一目标DOM节点的情况下,可以将子节点的value值存储于第一目标DOM节点的children属性内,获得组件树。
可选的,在所述将第一页面所包含的多个第一DOM节点进行序列化的步骤之后,在所述将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得组件树的步骤之前,所述方法还包括:
将经过序列化的多个第一DOM节点格式化为JSON格式;
所述在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得组件树,包括:
在经过序列化的,且格式化为所述JSON格式的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得所述组件树。
进一步的,可以将经过序列化的多个第一DOM节点格式化为JSON格式。接下来,在经过序列化的,且格式化为JSON格式的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,可以将子节点的value值存储于第一目标DOM节点的children属性内,获得组件树。
需要说明的是,现有技术中,在将一个页面内的DOM节点搬迁至另一个页面时,需要从数据库中的不同的位置分别获取存储父节点的表以及存储子节点的表,操作过程比较繁琐。
而在本申请中,可以将第一页面所包含的多个第一DOM节点进行序列化。在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,可以将子节点的value值存储于第一目标DOM节点的children属性内,获得组件树。这样,在将一个页面内的DOM节点搬迁至另一个页面时,无需从数据库中的不同的位置分别获取存储父节点的表以及存储子节点的表,操作过程简单,方便快捷。
由以上技术方案可知,本发明实施例提供的一种序列化文档对象模型DOM节点的方法,将第一页面所包含的多个第一DOM节点进行序列化,其中,所述第一页面包含多个组件,所述多个组件中的每个组件包含至少一个第一DOM节点;在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得组件树。这样,可以将第一页面所包含的多个第一DOM节点进行序列化。在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,可以将子节点的value值存储于第一目标DOM节点的children属性内,获得组件树。这样,在将一个页面内的DOM节点搬迁至另一个页面时,无需从数据库中的不同的位置分别获取存储父节点的表以及存储子节点的表,操作过程简单,方便快捷。
参见图2,图2是本发明提供的一种文档对象模型DOM节点的渲染方法的流程图。
如图2所示,包括以下步骤:
步骤201、获取组件树,其中,所述组件树为在将第一页面所包含的多个第一DOM节点进行序列化之后,且在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,所获得的组件树。
在步骤201中,可以获取组件树。该组件树为在将第一页面所包含的多个第一DOM节点进行序列化之后,且在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将子节点的value值存储于第一目标DOM节点的children属性内,所获得的组件树。
步骤202、递归解析所述组件树,获得所述第一目标DOM节点的value值、所述第一目标DOM节点的子节点的value值以及第二目标DOM节点的value值,其中,所述第二目标DOM节点为所述经过序列化的多个第一DOM节点中不存在子节点的第一DOM节点。
在步骤202中,可以递归解析组件树,获得第一目标DOM节点的value值、第一目标DOM节点的子节点的value值以及第二目标DOM节点的value值。其中,第二目标DOM节点为经过序列化的多个第一DOM节点中不存在子节点的第一DOM节点。
步骤203、创建多个第三DOM节点。
在步骤203中,可以创建多个第三DOM节点。例如,可以调用React.creatElement方法,来创建多个第三DOM节点。
步骤204、根据所述第一目标DOM节点的value值、所述第一目标DOM节点的子节点的value值以及所述第二目标DOM节点的value值,对所述多个第三DOM节点进行渲染,获得由经过渲染的多个第三DOM节点组成的第二页面。
在步骤204中,可以根据第一目标DOM节点的value值、第一目标DOM节点的子节点的value值以及第二目标DOM节点的value值,对多个第三DOM节点进行渲染,获得由经过渲染的多个第三DOM节点组成的第二页面。此时,即实现了将一个页面内的DOM节点搬迁至另一个页面。
需要说明的是,现有技术中,在将一个页面内的DOM节点搬迁至另一个页面时,需要从数据库中的不同的位置分别获取存储父节点的表以及存储子节点的表,操作过程比较繁琐。
而在本申请中,可以递归解析获取到的组件树,获得第一目标DOM节点的value值、第一目标DOM节点的子节点的value值以及第二目标DOM节点的value值。接下来,可以创建多个第三DOM节点。进而可以根据第一目标DOM节点的value值、第一目标DOM节点的子节点的value值以及第二目标DOM节点的value值,对多个第三DOM节点进行渲染,获得由经过渲染的多个第三DOM节点组成的第二页面。在将一个页面内的DOM节点搬迁至另一个页面时,无需从数据库中的不同的位置分别获取存储父节点的表以及存储子节点的表,操作过程简单,方便快捷。
由以上技术方案可知,本发明实施例提供的一种文档对象模型DOM节点的渲染方法,获取组件树,其中,所述组件树为在将第一页面所包含的多个第一DOM节点进行序列化之后,且在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,所获得的组件树;递归解析所述组件树,获得所述第一目标DOM节点的value值、所述第一目标DOM节点的子节点的value值以及第二目标DOM节点的value值,其中,所述第二目标DOM节点为所述经过序列化的多个第一DOM节点中不存在子节点的第一DOM节点;创建多个第三DOM节点;根据所述第一目标DOM节点的value值、所述第一目标DOM节点的子节点的value值以及所述第二目标DOM节点的value值,对所述多个第三DOM节点进行渲染,获得由经过渲染的多个第三DOM节点组成的第二页面。这样,可以递归解析获取到的组件树,获得第一目标DOM节点的value值、第一目标DOM节点的子节点的value值以及第二目标DOM节点的value值。接下来,可以创建多个第三DOM节点。进而可以根据第一目标DOM节点的value值、第一目标DOM节点的子节点的value值以及第二目标DOM节点的value值,对多个第三DOM节点进行渲染,获得由经过渲染的多个第三DOM节点组成的第二页面。在将一个页面内的DOM节点搬迁至另一个页面时,无需从数据库中的不同的位置分别获取存储父节点的表以及存储子节点的表,操作过程简单,方便快捷。
参见图3,图3是本发明提供的一种序列化文档对象模型DOM节点的装置的结构图。如图3所示,序列化文档对象模型DOM节点的装置300包括序列化模块301和存储模块302,其中:
序列化模块301,用于将第一页面所包含的多个第一DOM节点进行序列化,其中,所述第一页面包含多个组件,所述多个组件中的每个组件包含至少一个第一DOM节点;
存储模块302,用于在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得组件树。
可选的,如图4所示,所述装置还包括:
判断模块303,用于判断经过序列化的多个第一DOM节点中是否存在父节点ID相同的多个第二DOM节点;
在经过序列化的多个第一DOM节点中存在父节点ID相同的多个第二DOM节点的情况下,所述存储模块302具体用于在所述多个第二DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得所述组件树。
可选的,如图5所示,所述装置还包括:
格式化模块304,用于将经过序列化的多个第一DOM节点格式化为JSON格式;
所述存储模块302具体用于在经过序列化的,且格式化为所述JSON格式的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得所述组件树。
序列化文档对象模型DOM节点的装置300能够实现图1的方法实施例中序列化文档对象模型DOM节点的装置实现的各个过程,为避免重复,这里不再赘述。且序列化文档对象模型DOM节点的装置300可以实现将第一页面所包含的多个第一DOM节点进行序列化。在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,可以将子节点的value值存储于第一目标DOM节点的children属性内,获得组件树。这样,在将一个页面内的DOM节点搬迁至另一个页面时,无需从数据库中的不同的位置分别获取存储父节点的表以及存储子节点的表,操作过程简单,方便快捷。
参见图6,图6是本发明提供的一种文档对象模型DOM节点的渲染装置的结构图。如图6所示,文档对象模型DOM节点的渲染装置600包括获取模块601、递归解析模块602、创建模块603和渲染模块604,其中:
获取模块601,用于获取组件树,其中,所述组件树为在将第一页面所包含的多个第一DOM节点进行序列化之后,且在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,所获得的组件树;
递归解析模块602,用于递归解析所述组件树,获得所述第一目标DOM节点的value值、所述第一目标DOM节点的子节点的value值以及第二目标DOM节点的value值,其中,所述第二目标DOM节点为所述经过序列化的多个第一DOM节点中不存在子节点的第一DOM节点;
创建模块603,用于创建多个第三DOM节点;
渲染模块604,用于根据所述第一目标DOM节点的value值、所述第一目标DOM节点的子节点的value值以及所述第二目标DOM节点的value值,对所述多个第三DOM节点进行渲染,获得由经过渲染的多个第三DOM节点组成的第二页面。
文档对象模型DOM节点的渲染装置600能够实现图2的方法实施例中文档对象模型DOM节点的渲染装置实现的各个过程,为避免重复,这里不再赘述。且文档对象模型DOM节点的渲染装置600可以实现递归解析获取到的组件树,获得第一目标DOM节点的value值、第一目标DOM节点的子节点的value值以及第二目标DOM节点的value值。接下来,可以创建多个第三DOM节点。进而可以根据第一目标DOM节点的value值、第一目标DOM节点的子节点的value值以及第二目标DOM节点的value值,对多个第三DOM节点进行渲染,获得由经过渲染的多个第三DOM节点组成的第二页面。在将一个页面内的DOM节点搬迁至另一个页面时,无需从数据库中的不同的位置分别获取存储父节点的表以及存储子节点的表,操作过程简单,方便快捷。
图7为本发明实施例提供的电子设备的硬件结构示意图。如图7所示,该电子设备,包括:
存储器701,用于存储程序指令;
处理器702,用于调用并执行所述存储器中的程序指令,以实现上述实施例中所述序列化文档对象模型DOM节点的方法。具体可以参见前述实施例中的相关描述。
本实施例中,处理器702和存储器701可通过总线或其他方式连接。处理器可以是通用处理器,例如中央处理器、数字信号处理器、专用集成电路,或者被配置成实施本发明实施例的一个或多个集成电路。存储器可以包括易失性存储器,例如随机存取存储器;存储器也可以包括非易失性存储器,例如只读存储器、快闪存储器、硬盘或固态硬盘。
图8为本发明实施例提供的电子设备的硬件结构示意图。如图8所示,该电子设备,包括:
存储器801,用于存储程序指令;
处理器802,用于调用并执行所述存储器中的程序指令,以实现上述实施例中所述文档对象模型DOM节点的渲染方法。具体可以参见前述实施例中的相关描述。
本实施例中,处理器802和存储器801可通过总线或其他方式连接。处理器可以是通用处理器,例如中央处理器、数字信号处理器、专用集成电路,或者被配置成实施本发明实施例的一个或多个集成电路。存储器可以包括易失性存储器,例如随机存取存储器;存储器也可以包括非易失性存储器,例如只读存储器、快闪存储器、硬盘或固态硬盘。
本发明实施例还提供了一种可读存储介质,包括:所述可读存储介质中存储有计算机程序,当序列化文档对象模型DOM节点的装置的至少一个处理器执行所述计算机程序时,序列化文档对象模型DOM节点的装置执行上述实施例中所述的序列化文档对象模型DOM节点的方法。
本发明实施例还提供了一种可读存储介质,包括:所述可读存储介质中存储有计算机程序,当文档对象模型DOM节点的渲染装置的至少一个处理器执行所述计算机程序时,文档对象模型DOM节点的渲染装置执行上述实施例中所述的文档对象模型DOM节点的渲染方法。
所述的可读存储介质可为磁碟、光盘、只读存储记忆体(英文:read-only memory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于序列化文档对象模型DOM节点的装置、文档对象模型DOM节点的渲染装置、电子设备及可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
以上所述的本发明实施方式并不构成对本发明保护范围的限定。
Claims (12)
1.一种序列化文档对象模型DOM节点的方法,其特征在于,包括:
将第一页面所包含的多个第一DOM节点进行序列化,其中,所述第一页面包含多个组件,所述多个组件中的每个组件包含至少一个第一DOM节点;
在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得组件树。
2.如权利要求1所述的方法,其特征在于,在所述将第一页面所包含的多个第一DOM节点进行序列化的步骤之后,所述方法还包括:
判断经过序列化的多个第一DOM节点中是否存在父节点ID相同的多个第二DOM节点;
在经过序列化的多个第一DOM节点中存在父节点ID相同的多个第二DOM节点的情况下,所述在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得组件树,包括:
在所述多个第二DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得所述组件树。
3.如权利要求1所述的方法,其特征在于,在所述将第一页面所包含的多个第一DOM节点进行序列化的步骤之后,在所述将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得组件树的步骤之前,所述方法还包括:
将经过序列化的多个第一DOM节点格式化为JSON格式;
所述在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得组件树,包括:
在经过序列化的,且格式化为所述JSON格式的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得所述组件树。
4.一种文档对象模型DOM节点的渲染方法,其特征在于,包括:
获取组件树,其中,所述组件树为在将第一页面所包含的多个第一DOM节点进行序列化之后,且在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,所获得的组件树;
递归解析所述组件树,获得所述第一目标DOM节点的value值、所述第一目标DOM节点的子节点的value值以及第二目标DOM节点的value值,其中,所述第二目标DOM节点为所述经过序列化的多个第一DOM节点中不存在子节点的第一DOM节点;
创建多个第三DOM节点;
根据所述第一目标DOM节点的value值、所述第一目标DOM节点的子节点的value值以及所述第二目标DOM节点的value值,对所述多个第三DOM节点进行渲染,获得由经过渲染的多个第三DOM节点组成的第二页面。
5.一种序列化文档对象模型DOM节点的装置,其特征在于,包括:
序列化模块,用于将第一页面所包含的多个第一DOM节点进行序列化,其中,所述第一页面包含多个组件,所述多个组件中的每个组件包含至少一个第一DOM节点;
存储模块,用于在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得组件树。
6.如权利要求5所述的装置,其特征在于,所述装置还包括:
判断模块,用于判断经过序列化的多个第一DOM节点中是否存在父节点ID相同的多个第二DOM节点;
在经过序列化的多个第一DOM节点中存在父节点ID相同的多个第二DOM节点的情况下,所述存储模块具体用于在所述多个第二DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得所述组件树。
7.如权利要求5所述的装置,其特征在于,所述装置还包括:
格式化模块,用于将经过序列化的多个第一DOM节点格式化为JSON格式;
所述存储模块具体用于在经过序列化的,且格式化为所述JSON格式的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,获得所述组件树。
8.一种文档对象模型DOM节点的渲染装置,其特征在于,包括:
获取模块,用于获取组件树,其中,所述组件树为在将第一页面所包含的多个第一DOM节点进行序列化之后,且在经过序列化的多个第一DOM节点中存在具有子节点的第一目标DOM节点的情况下,将所述子节点的value值存储于所述第一目标DOM节点的children属性内,所获得的组件树;
递归解析模块,用于递归解析所述组件树,获得所述第一目标DOM节点的value值、所述第一目标DOM节点的子节点的value值以及第二目标DOM节点的value值,其中,所述第二目标DOM节点为所述经过序列化的多个第一DOM节点中不存在子节点的第一DOM节点;
创建模块,用于创建多个第三DOM节点;
渲染模块,用于根据所述第一目标DOM节点的value值、所述第一目标DOM节点的子节点的value值以及所述第二目标DOM节点的value值,对所述多个第三DOM节点进行渲染,获得由经过渲染的多个第三DOM节点组成的第二页面。
9.一种电子设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用并执行所述存储器中的程序指令,以实现权利要求1~3任一项所述的序列化文档对象模型DOM节点的方法。
10.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序,当序列化文档对象模型DOM节点的装置的至少一个处理器执行所述计算机程序时,序列化文档对象模型DOM节点的装置执行权利要求1~3任一项所述的序列化文档对象模型DOM节点的方法。
11.一种电子设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用并执行所述存储器中的程序指令,以实现权利要求4所述的文档对象模型DOM节点的渲染方法。
12.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序,当文档对象模型DOM节点的渲染装置的至少一个处理器执行所述计算机程序时,文档对象模型DOM节点的渲染装置执行权利要求4所述的文档对象模型DOM节点的渲染方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010268560.0A CN111475760B (zh) | 2020-04-07 | 2020-04-07 | 一种序列化dom节点的方法、dom节点的渲染方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010268560.0A CN111475760B (zh) | 2020-04-07 | 2020-04-07 | 一种序列化dom节点的方法、dom节点的渲染方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111475760A true CN111475760A (zh) | 2020-07-31 |
CN111475760B CN111475760B (zh) | 2023-11-14 |
Family
ID=71749997
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010268560.0A Active CN111475760B (zh) | 2020-04-07 | 2020-04-07 | 一种序列化dom节点的方法、dom节点的渲染方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111475760B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112395483A (zh) * | 2020-11-13 | 2021-02-23 | 郑州阿帕斯数云信息科技有限公司 | 基于树形结构的页面渲染方法及装置 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6418446B1 (en) * | 1999-03-01 | 2002-07-09 | International Business Machines Corporation | Method for grouping of dynamic schema data using XML |
US20030018898A1 (en) * | 2001-07-23 | 2003-01-23 | Lection David B. | Method, system, and computer-program product for providing selective access to certain child nodes of a document object model (DOM) |
CN102841901A (zh) * | 2011-06-23 | 2012-12-26 | 腾讯科技(深圳)有限公司 | 一种网页显示的方法和装置 |
CN105630902A (zh) * | 2015-12-21 | 2016-06-01 | 明博教育科技股份有限公司 | 一种渲染和增量更新网页的方法 |
CN107908399A (zh) * | 2017-11-14 | 2018-04-13 | 山东浪潮通软信息科技有限公司 | 一种页面开发方法及装置 |
CN109542417A (zh) * | 2018-11-20 | 2019-03-29 | 北京小米移动软件有限公司 | 一种dom渲染网页的方法、装置、终端和存储介质 |
CN109857956A (zh) * | 2019-01-25 | 2019-06-07 | 四川大学 | 基于标签和分块特征的新闻网页关键信息自动抽取方法 |
CN109977331A (zh) * | 2019-03-04 | 2019-07-05 | 东软集团股份有限公司 | 控制页面资源执行的方法及装置 |
CN110308904A (zh) * | 2019-05-30 | 2019-10-08 | 重庆金融资产交易所有限责任公司 | 多类型前端框架的聚合方法、装置和计算机设备 |
CN110874251A (zh) * | 2018-08-29 | 2020-03-10 | 北京京东尚科信息技术有限公司 | 一种实现图片木桶布局的方法和装置 |
-
2020
- 2020-04-07 CN CN202010268560.0A patent/CN111475760B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6418446B1 (en) * | 1999-03-01 | 2002-07-09 | International Business Machines Corporation | Method for grouping of dynamic schema data using XML |
US20030018898A1 (en) * | 2001-07-23 | 2003-01-23 | Lection David B. | Method, system, and computer-program product for providing selective access to certain child nodes of a document object model (DOM) |
CN102841901A (zh) * | 2011-06-23 | 2012-12-26 | 腾讯科技(深圳)有限公司 | 一种网页显示的方法和装置 |
CN105630902A (zh) * | 2015-12-21 | 2016-06-01 | 明博教育科技股份有限公司 | 一种渲染和增量更新网页的方法 |
CN107908399A (zh) * | 2017-11-14 | 2018-04-13 | 山东浪潮通软信息科技有限公司 | 一种页面开发方法及装置 |
CN110874251A (zh) * | 2018-08-29 | 2020-03-10 | 北京京东尚科信息技术有限公司 | 一种实现图片木桶布局的方法和装置 |
CN109542417A (zh) * | 2018-11-20 | 2019-03-29 | 北京小米移动软件有限公司 | 一种dom渲染网页的方法、装置、终端和存储介质 |
CN109857956A (zh) * | 2019-01-25 | 2019-06-07 | 四川大学 | 基于标签和分块特征的新闻网页关键信息自动抽取方法 |
CN109977331A (zh) * | 2019-03-04 | 2019-07-05 | 东软集团股份有限公司 | 控制页面资源执行的方法及装置 |
CN110308904A (zh) * | 2019-05-30 | 2019-10-08 | 重庆金融资产交易所有限责任公司 | 多类型前端框架的聚合方法、装置和计算机设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112395483A (zh) * | 2020-11-13 | 2021-02-23 | 郑州阿帕斯数云信息科技有限公司 | 基于树形结构的页面渲染方法及装置 |
CN112395483B (zh) * | 2020-11-13 | 2024-03-01 | 郑州阿帕斯数云信息科技有限公司 | 基于树形结构的页面渲染方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111475760B (zh) | 2023-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111061643B (zh) | Sdk集群的兼容性检测方法、装置、电子设备及存储介质 | |
CN111090417A (zh) | 二进制文件解析方法、装置、设备及介质 | |
CN107330014B (zh) | 一种数据表的创建方法与设备 | |
JP2018116496A (ja) | 差異検出装置及びプログラム | |
CN108664546B (zh) | Xml数据结构转换方法和装置 | |
CN108073424B (zh) | 组件接口的调用方法及装置 | |
CN111026368B (zh) | 基于Python插件生成方法、装置、设备及存储介质 | |
CN112199935A (zh) | 数据的比对方法、装置、电子设备及计算机可读存储介质 | |
CN111475760B (zh) | 一种序列化dom节点的方法、dom节点的渲染方法和装置 | |
CN115576603B (zh) | 一种获取代码片段中的变量值的方法及装置 | |
CN114168119B (zh) | 代码文件编辑方法、装置、电子设备以及存储介质 | |
CN115390847A (zh) | 日志处理方法及装置、计算机可读存储介质、终端 | |
CN104361121A (zh) | 一种web报表系统公式的批量解析方法 | |
CN110928549B (zh) | 一种重编辑前端脚本程序的方法及装置 | |
CN114936269A (zh) | 文档搜索平台、搜索方法、装置、电子设备及存储介质 | |
CN108427664A (zh) | 一种文档解析方法和装置 | |
CN111125605B (zh) | 页面元素获取方法和装置 | |
CN114661402A (zh) | 一种界面渲染方法、装置、电子设备及计算机可读介质 | |
CN110058858B (zh) | 一种json数据处理方法及装置 | |
CN113536762A (zh) | Json文本的比对方法及装置 | |
CN113672509A (zh) | 自动化测试方法、装置、测试平台及存储介质 | |
CN112131016A (zh) | 应用程序内部数据处理方法、装置及设备 | |
CN111813769A (zh) | 数据加工方法与装置 | |
CN116319718B (zh) | 一种云数据存储处理方法、系统、设备及介质 | |
CN112597109B (zh) | 数据存储方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |