System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于计算机,尤其涉及一种生成网页节点标识的编码方法及装置。
技术介绍
1、目前,常常会为计算机前端的每个组件自动生成hash(哈希)值,即用于生成该组件的dom(网页节点)标识。其中,这个hash值是由该组件的源码内容生成的内容hash值,通过这个标识,可以识别到这个组件,然后通过指定的规则对该组件进行定点更改或者样式处理。
2、其中,组件是前端流行框架中对业务和抽象封装进行代码实现的一种方法,它提供便利的双向绑定技术和有效的声明周期管理来实现业务逻辑的原子化处理。
3、网页节点dom是指前端网页里面的节点,用于展示页面内容的容器,浏览器的渲染载体,前端代码可以利用浏览器对网页节点提供的各种接口进行处理,例如展示/隐藏等。
4、组件通常会被渲染为网页节点。在前端框架中,组件树的结构和dom树的结构通常是相互关联的。组件的渲染结果会映射到dom中的相应节点。例如,一个react组件可能会生成一棵对应的虚拟dom树,然后由框架负责将虚拟dom转换为实际的dom元素。
5、react是一个用于构建用户界面的javascript(脚本)库,可以用于构建单页面应用程序,其中整个页面不需要重新加载,或者用于构建传统的多页面应用程序。
6、hash值是指由内容经过hash算法计算的出来的值。如果内容相同,则hash值会相同,如果内容一旦发生改变,则hash值保持不变,hash值通常不具备语义化。
7、专利技术人在实现本申请的过程中发现,现有技术所生成的hash值
技术实现思路
1、鉴于以上现有技术的不足,专利技术的目的在于提供一种生成网页节点标识的编码方法及装置,以可以生成具有语义的网页节点标识,方便开发人员进行标识识别及管理,并降低标识的管理成本和维护成本。
2、本专利技术的第一方面,提出了一种生成网页节点标识的编码方法,包括:
3、s1.确定待开发的目标网页待调用的多个组件;
4、s2.确定所述目标网页展示时,所述多个组件之间的依赖关系;
5、s3.基于所述依赖关系,生成所述多个组件的有向图;
6、s4.基于所述有向图及从入口组件到叶子组件的路径的生成规则,生成多个拓扑排序路径;
7、s5.针对每个所述组件,将该组件对应的拓扑排序路径确定为该组件被渲染为的网页节点的标识。
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、本专利技术所述的方法和装置,可以确定待开发的目标网页待调用的多个组件。然后,确定目标网页展示时,多个组件之间的依赖关系。然后,可以基于依赖关系,生成多个组件的有向图。进而,可以基于有向图及从入口组件到叶子组件的路径的生成规则,生成多个拓扑排序路径。针对每个组件,将该组件对应的拓扑排序路径确定为该组件被渲染为的网页节点的标识。这样,可以生成具有语义的网页节点标识,方便进行标识识别及管理,并降低标识的管理成本和维护成本。
本文档来自技高网...【技术保护点】
1.一种生成网页节点标识的编码方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,在所述确定待开发的目标网页待调用的多个组件之前,还包括:
3.根据权利要求1所述的方法,其特征在于,在所述针对每个所述组件,将该组件对应的拓扑排序路径确定为该组件被渲染为的网页节点的标识之后,还包括:
4.根据权利要求1所述的方法,其特征在于,所述针对每个所述组件,将该组件对应的拓扑排序路径确定为该组件被渲染为的网页节点的标识,包括:
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
6.一种生成网页节点标识的编码装置,其特征在于,包括:
7.根据权利要求6所述的装置,其特征在于,所述装置还包括第三生成模块,所述第三生成模块具体用于:
8.根据权利要求6所述的装置,其特征在于,所述装置还包括调整模块,所述调整模块具体用于:
9.根据权利要求6所述的装置,其特征在于,所述第三确定模块具体用于:
10.根据权利要求9所述的装置,其特征在于,所述第三确定模块还用于:
【技术特征摘要】
1.一种生成网页节点标识的编码方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,在所述确定待开发的目标网页待调用的多个组件之前,还包括:
3.根据权利要求1所述的方法,其特征在于,在所述针对每个所述组件,将该组件对应的拓扑排序路径确定为该组件被渲染为的网页节点的标识之后,还包括:
4.根据权利要求1所述的方法,其特征在于,所述针对每个所述组件,将该组件对应的拓扑排序路径确定为该组件被渲染为的网页节点的标识,包括:
5.根据权...
【专利技术属性】
技术研发人员:徐忠勇,代有为,陈清沣,
申请(专利权)人:天翼云科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。