页面生成方法、装置、设备及存储介质与流程

文档序号:22241005发布日期:2020-09-15 19:53阅读:119来源:国知局
页面生成方法、装置、设备及存储介质与流程

本发明实施例涉及计算机技术领域,尤其涉及页面生成方法、装置、设备及存储介质。



背景技术:

在软件产品的开发中,需要对软件产品中设计的所有页面进行开发,而在页面开发中,往往会遇到一些场景类似、功能需求本质相同,只是呈现形式和数据不同的页面。在常规开发中,往往通过重复编程和调试的形式来开发生成每一个页面,该种生成页面的形式会浪费大量的人力物力,效率也极其低下。

为解决上述问题,现有提出的改进方式是:可以在已生成页面的基础上通过在统一资源定位符中加入参数来直接控制页面所显示数据的改变,由此生成所包含数据内容不同的页面。

然而,该种改进方式的前提是新生成页面所具备的业务场景需要与已生成页面的业务场景完全一样,即,在界面显示以及所具备功能上都应该完全一致。由此可以看出,现有的用于页面生成的改进方式存在较大的局限性,无法满足存在业务场景定制化需求的页面生成。



技术实现要素:

有鉴于此,本发明实施例提供了页面生成方法、装置、设备及存储介质,以解决需要对已存在相似场景及功能页面的定制化需求页面通过重复开发重复测试来进行页面生成的问题。

第一方面,本发明实施例提供了一种页面生成方法,包括:

根据待生成的目标页面的页面需求信息,从预生成的页面模板集合中确定所述目标页面对应的基准页面模板;

调取所述基准页面模板对应的标准配置语法树,并确定所述目标页面相对所述基准页面模板的区别元素信息;

根据所述标准配置语法树及所述区别元素信息,结合页面渲染引擎,通过修改所述标准配置语法树生成所述目标页面。

第二方面,本发明实施例提供一种页面生成装置,包括:

模板确定模块,用于根据待生成的目标页面的页面需求信息,从预生成的页面模板集合中确定所述目标页面对应的基准页面模板;

语法树确定模块,用于调取所述基准页面模板对应的标准配置语法树,并确定所述目标页面相对所述基准页面模板的区别元素信息;

页面呈现模块,用于根据所述标准配置语法树及所述区别元素信息,结合页面渲染引擎,通过修改所述标准配置语法树生成所述目标页面。

第三方面,本发明实施例提供了一种计算机设备,包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序;

所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明第一方面实施例提供的页面生成方法。

第四方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明第一方面实施例提供的页面生成方法。

本发明实施例提供的页面生成方法、装置、设备及存储介质中,首先可以根据待生成的目标页面的页面需求信息,从预生产的页面模板集合中确定该目标页面对应的基准页面模板;然后确定目标页面相对该基准页面模板的区别元素信息,并调取该基准页面模板对应的标准配置语法树;最终可以根据标准配置语法树以及区别元素信息,结合页面渲染引擎,通过修改标准配置语法树就能生成目标页面。上述技术方案,当存在待生成的具备定制化需求的页面时,能够从已有的页面模板中确定可复用的页面模板并通过对页面模板所对应配置语法树的修改来简单快速的生成满足定制化需求的页面,由此充分利用排至化开发的灵活性和通用性,提高了已开发页面模板的利用率,进而大大提高了待生成页码的开发效率。

附图说明

图1给出了本发明实施例一提供的一种页面生成方法的流程示意图;

图2给出了本实施例一所提供页面生成方法中页面模板构建的实现流程图;

图2a给出了生成页面模板时所确定配置节点及属性信息的实例展示图;

图2b给出了采用所确定配置节点及属性信息形成文档对象模型的实例展示图;

图2c给出了通过对文档对象模型的渲染所形成配置语法树的实例展示图;

图3给出了本发明实施例二提供的一种页面生成方法的流程示意图;

图3a给出了待生成的目标页面的效果呈现图;

图3b给出了目标页面所对应基准页面模板的效果呈现图;

图3c给出了通过对标准配置语法树的更新形成目标配置语法树的实例展示图;

图3d给出了一个包含区别数据内容的配置数据集的实例展示图;

图4为本发明实施例三提供的一种页面生成装置的结构框图;

图5给出了本发明实施例四提供的一种计算机设备的硬件结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施例方式作进一步地详细描述。应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。此外,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。

在本申请的描述中,需要理解的是,术语“第一”、“第二”、“第三”等仅用于用于区别类似的对象,而不必用于描述特定的顺序或先后次序,也不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。

实施例一

图1给出了本发明实施例一提供的一种页面生成方法的流程示意图,该方法适用于对具备定制化需求的待生成页面进行页面生成的情况,该方法可以由页面生成装置执行,其中,该装置可以由软件和/或硬件实现,并一般可集成在计算机设备上。

如图1所示,本发明实施例一提供的一种页面生成方法,具体包括如下操作:

s101、根据待生成的目标页面的页面需求信息,从预生成的页面模板集合中确定所述目标页面对应的基准页面模板。

在本实施例中,所述目标页面具体可理解为待按照需求用户提出的定制化需求生成的页面,所述页面需求信息可以是通过对定制化需求的整理形成的生成目标页面所需的信息,所述页面需求信息中可以包括待生成的目标页面中应该呈现的场景布局,需要具备的功能组件以及界面元素等信息。所述页面模板集合可理解为包含了至少一个页面模板的集合,所述页面模板可认为是按照某种常规的场景布局呈现的页面,页面模板内可以具备一些常规的或者不同需求用户可能会作为页面需求的页面常规功能组件及界面元素。

具体的,本步骤可以在整理获得待生成的目标页面的页面需求信息后,通过对页面模板集合中各页面模板所具备场景布局及所包含各界面元素或功能组件的分析,确定出与页面需求信息中所包括场景信息相匹配的页面模板作为待生成的目标页面的基准页面模板。

s102、调取所述基准页面模板对应的标准配置语法树,并确定所述目标页面相对所述基准页面模板的区别元素信息。

在本实施例中,优选考虑采用前端开发框架vue框架与编译器bable相结合的模式来渲染生成页面,采用该种模式进行页面生成时,可以在渲染前将页面的元素和功能分别固化成文档对象模型以树状数据结构存储,然后通过对树状数据结构的元素或功能进行渲染来实现页面的生成。由此可知,本实施例中的页面模板可以看做通过对元素或组件所对应文件对象模型的渲染来获得的,且本实施例可以将该基准页面模板对应存在的树状结构类文件对象模型看作配置化语法树并优选记为标准配置语法树。本步骤中的标准配置语法树在在预先封装成函数之后通过函数调取的指令获得。

同时需要说明的是,本步骤中的标准配置语法树实际对应了页面模板中的元素或组件,并通过树状结构来体现了元素节点间的关联关系。标准配置语法树中除包括各元素节点外,还对应给出给元素节点的属性信息,且所述属性信息中包含相应元素节点的唯一标识;本实施例可以通过标准配置语法树中各元素节点的属性信息来完成页面渲染,各元素节点具备的唯一标识可用于在后续目标页面生成的过程中确定待进行修改操作的元素节点。

在本实施例中,可认为目标页面与基准页面模板的场景布局相同或相似,所具备的功能组件或包含的界面元素也十分相近,但由于目标页面的生成存在一个定制化需求,所以目标页面和基准页面模板存在一些区别性特征,本步骤可以根据目标页面所具备页面需求信息以及基准页面模板的一些标签或功能属性信息来区分出目标页面与基准页面模板的区别,由此获得区别元素信息,所述区别元素信息可以包括新增或需要删除的元素、组件或者功能类信息。

具体的,本实施例预先确定的页面模板集合中的各页面模板可以通过渲染引擎进行页面内容的呈现,且在对页面模板的页面内容进行呈现之后还可以在代码呈现模式下展示页面模板的可展示代码界面。对于基准页面模板而言,通过渲染呈现出页面内容后还可以查看所形成的可展示代码界面,所述可展示代码界面中可以包含展现页面场景以及功能元素所对应的元素属性信息。通过所展示的代码界面,可以获取到基准页面模板中各具备不同唯一标识的元素节点所具备的属性信息。

基于上述描述,在进行目标页面与基准页面模板的区别确定时,可以在人为确定出具体的区别点后,本步骤可以通过遍历基准页面模板所对应可展示代码界面内元素属性信息的形式,来确定上述所找到的区别点应该在可展示代码界面所包含标准配置语法树的哪个元素节点上,并将确定的元素节点看做区别元素节点以此形成区别元素信息。

s103、根据所述标准配置语法树及所述区别元素信息,结合页面渲染引擎,通过修改所述标准配置语法树生成所述目标页面。

在本实施例中,通过上述步骤获得基准页面模板对应的标准配置语法树以及目标页面相对基准页面模板的区别元素信息后,可以从区别元素信息内包括的具体内容中确定标准配置语法树上待修改的元素节点,之后对待修改的元素节点根据在目标页面上实际对应的属性信息进行更新操作,由此形成对应目标页面的目标配置语法树,最终可通过本实施例所提供的页面渲染引擎对目标配置语法树进行渲染,从而生成目标页面并实现目标页面的呈现。

示例性的,本实施例中的页面渲染引擎可以是前端vue框架与编译器bable的结合,在渲染的具体实现中,首先使用深度优先遍历的方式根据目标配置语法树的树状结构将元素从最底层向上组装成业务组件,之后再结合编译器bable将组合后的业务组件转化成抽象语法树并在转换编译成vue的渲染函数,以此通过对渲染函数的渲染来实现目标页面的内容呈现。

本发明实施例一提供的一种页面生成方法,首先可以根据待生成的目标页面的页面需求信息,从预生产的页面模板集合中确定该目标页面对应的基准页面模板;然后确定目标页面相对该基准页面模板的区别元素信息,并调取该基准页面模板对应的标准配置语法树;最终可以根据标准配置语法树以及区别元素信息,结合页面渲染引擎,通过修改标准配置语法树就能生成目标页面。上述技术方案,当存在待生成的具备定制化需求的页面时,能够从已有的页面模板中确定可复用的页面模板并通过对页面模板所对应配置语法树的修改来简单快速的生成满足定制化需求的页面,由此充分利用排至化开发的灵活性和通用性,提高了已开发页面模板的利用率,进而大大提高了待生成页码的开发效率。

作为本发明实施例二的一个可选实施例,在本可选实施例中,具体优化包括了:构建页面模板,并将所述页面模板存放在设定路径下的页面模板集合中。

可以理解的是,本实施例上述所采用页面模板集合中的页面模板,需要通过页面生成的方式预先生成并保存。具体的,对于不同的页面模板而言,其所具备的场景布局、元素信息以及功能组件等存在较大的不同,这些不同可以构成相应页面模板的页面布局信息。

在页面模板的生成过程中,本可选实施例可以通过各待生成的页面模板的页面布局信息来确定页面模板中所包含的配置节点,同时可以确定出各配置节点的属性信息以及各配置节点间的关联关系等,且属性信息可以采用预先选定的数据格式来表示,还可以采用树状结构的形式结合配置节点的关联关系将各配置节点构成一个文档对象模型。

之后,可以通过本实施例所采用的渲染引擎来对文档对象模型进行遍历,以实现对不符合规范的配置属性进行转换,然后通过对各配置节点的渲染生成配置语法树,配置语法树中包含对应各配置节点的元素节点,且各元素节点对应一个包含在属性信息中的唯一标识,最终可以通过对该配置语法树的渲染生成页面模板,且页面模板的配置语法树可以封装成工厂函数以在后续调取获得用于目标页面的生成。

进一步地,图2给出了本实施例一所提供页面生成方法中页面模板构建的实现流程图,如图2所示,本实施例将“构建用于页面生成的页面模板”具体包括如下步骤:

s1001、获取按照业务场景需求设定的包含各配置节点的页面布局信息。

对于任一个待生成的页面模板而言,在生成其之前同样存在页面生成所需的业务场景需求,所述业务场景需求相当于一个进行页面生成的页面设计信息,可以包含页面模板的场景布局需求,功能组件以及元素信息等设计需求,这些业务场景需求可以由开发人员设定,或者有需求的企业用户提供。

在本实施例中,可以通过开发人员对业务场景需求的分析,来确定页面模板生成所需要的配置节点,同时可以将包含各配置节点及节点相关内容的信息按照渲染引擎可处理的形式整理成页面布局信息,本步骤可以获取到该页面布局信息。

s1002、分析所述页面布局信息,并按设定的数据格式配置各所述配置节点的属性信息。

在本实施例中,页面布局信息内包含了页面模板生成所需的配置节点,同时还包括了各配置节点所具备的相关属性信息,在所采用的渲染引擎框架下,本步骤可以通过对页面布局信息的分析,确定出具备包含的配置节点,同时可以按照渲染引擎框架所对应的数据格式对各配置节点的相关属性信息进行整理,形成匹配渲染引擎架构的属性信息。

示例性的,按照本实施例所采用的渲染引擎vue框架,可以通过对页面布局信息的分析,按照vue的约定全部转化成vue元素的顶层属性,如style,class,attrs,props,domprops,on,nativeon,directives,scopedslots,slot,key,ref,refinfor等,所形成的属性信息中可以包括元素名称等。同时,图2a给出了生成页面模板时所确定配置节点及属性信息的实例展示图,如图2a所示,整理形成的配置节点及属性信息可认为是以vue渲染框架为基础进行的设定,图2a中具体包含了具备vue属性(节点相关属性)的配置节点11,同时给出了配置节点的vue属性中包括的属性项信息12。

s1003、根据各所述属性信息确定各所述配置节点的关联关系,并按照所述关联关系生成包含各所述配置节点的文档对象模型。

在本实施例中,通过对上述步骤确定出的属性信息的分析,可以确定出各配置节点之前具备什么样的关联关系,如,节点1可能是节点2的父节点等,并且本步骤在确定出配置节点之间的关联关系后,可以通过层次及顺序等信息形成元素渲染顺序对配置节点进行组合渲染,最终所有的配置节点会组合成树状结构的文档对象模型。

接上述示例,图2b给出了采用所确定配置节点及属性信息形成文档对象模型的实例展示图。如图2b所示,具体给出了基于上述图2a中所包含的配置节点及配置节点的属性信息,构造形成的文档对象模型13,可以看出,文档对象模型13中各配置节点存在父节点与子节点的排列关系。

s1004、通过渲染引擎对所述文档对象模型的深度遍历形成配置语法树,其中,所述配置语法树包括基于各所述配置节点形成的元素节点,各所述元素节点具备的属性信息中包括所配置的唯一标识。

在本实施例中,可以在获得页面模板的文档对象模型后,通过渲染引擎采用深度遍历算法对上述文档对象模型中各配置节点的遍历,能够对配置节点的配置属性进行组合和转换,之后可以从底向上将配置节点渲染成元素节点,形成配置语法树,每个元素节点存在相应的属性信息,属性信息中包含了对应元素节点生成的唯一属性标识,本实施例记为唯一标识。

接上述示例,图2c给出了通过对文档对象模型的渲染所形成配置语法树的实例展示图。如图2c所示,给出了对应图2b中文档对象模型13的配置语法树14,可以看出,配置语法树中将原有的配置节点组合转换成元素节点,各元素节点具体相应的属性信息,且属性信息内包括了各元素节点的唯一标识。

需要说明的是,本实施例采用的前端开发框架vue框架与编译器bable相结合的模式作为渲染引擎对文档抽象模型进行渲染,且具体通过vue渲染函数实现渲染,vue渲染函数需要通过bable来编译jsx渲染引擎来形成。具体的,bable来编译jsx渲染引擎获得vue渲染函数的过程可以包括:

1、代码解析

具体的,将jsx渲染引擎代码解析成抽象语法树(ast),每个js引擎(比如chrome浏览器中的v8引擎)都有自己的ast解析器,而babel是通过babylon实现的。在解析过程中有两个阶段:词法分析和语法分析,词法分析阶段把字符串形式的代码转换为令牌(tokens)流,令牌类似于ast中节点;而语法分析阶段则会把一个令牌流转换成ast的形式,同时这个阶段会把令牌中的信息转换成ast的表述结构,这样的结构可以准确详细的描述页面的所有元素节点以及元素节点间的关系,所以这里会将jsx元素解析成ast中的jsxelement元素表达式,并将jsx的元素属性解析成jsxelement节点里面的jsxidentifier节点,也就是jsxelement元素表达式中的具体描述。

2、抽象语法树转换

具体的,在这个阶段,babel只需要操作得到的ast结构,即将接受得到的jsx渲染引擎语法树通过babel-traverse对其进行深度优先遍历,在此过程中通过定义jsx的访问者对jsx节点进行添加、更新及移除操作,即各个jsx的表达式节点以及其属性节点进行转换,合并,移动,增加等等的操作并注入vue的元素渲染函数createelement节点,最终转换成vue渲染函数的ast结构。

3、生成vue渲染函数

将经过转换后的vue渲染函数ast结构通过babel-generator再转换成js代码,过程就是深度优先遍历整个ast,然后构建可以表示转换后代码的字符串,最终生成vue渲染函数。

s1005、将所述配置语法树封装为接受函数回调的工厂函数,并对所述配置语法树进行渲染生成可呈现的页面模板。

在本实施例中,通过上述步骤渲染形成的配置语法树,为便于作为页面模板用于候选同一场景下具体定制化需求的页面的快速生成,本步骤可以将配置语法树封装成一个工厂函数,所生成的工厂函数可以作为一个配置生成器,可以通过函数回调函数被调取。同时,本实施例还可以进一步对所形成的配置语法树进行渲染生成可以呈现的页面模板,该页面模板可以记录在预先设置的页面模板集合中。

本发明上述可选实施例具体给出了页面模板集合中各页面模板的构建过程,所构建的页面模板可以在后续出现待生成的定制化需求页面时,通过调取相匹配的页面模板以及对页面模板所对应配置语法树的动态修改实现定制化需求页面的生成。本实施例页面模板生成中的关键在配置语法树的确定,该配置语法树充分具备了配置化开发的灵活性和通用性特点,有效的实现了基于配置化语法树的动态修改来解决同一类型页面开发效率低的问题。

实施例二

图3给出了本发明实施例二提供的一种页面生成方法的流程示意图,本实施例以上述实施例为基础进行优化,在本实施例中,进一步将调取所述基准页面模板对应的标准配置语法树,并确定所述目标页面相对所述基准页面模板的区别元素信息具体化为:通过接收所预设回调函数传递的参数信息,从设定存储路径下调取所述基准页面模板对应的标准配置语法树;通过查找所述基准页面模板对应的可展示代码界面,获得所述基准页面模板包含的元素属性信息;通过将所述页面需求信息与所述元素属性信息的比对,获得所述目标页面相对所述基准页面模板的区别元素信息。

同时,本实施例还进一步将根据所述标准配置语法树及所述区别元素信息,结合页面渲染引擎,通过修改所述标准配置语法树生成所述目标页面具体化为:获取通过对所述区别元素信息转换后形成的带有标识信息的可读信息项;通过所述页面渲染引擎遍历所述标准配置语法树,确定所述标识信息标识的元素节点在所述标准配置语法树中对应的目标位置;通过所述可读信息项对处于所述目标位置上目标元素节点的属性信息进行更新,形成更新后的目标配置语法树;对所述目标配置语法树进行渲染生成可呈现的目标页面。

如图3所示,本发明实施例二提供的一种页面生成方法,具体包括如下操作:

s201、根据待生成的目标页面的页面需求信息,从预生成的页面模板集合中确定所述目标页面对应的基准页面模板。

示例性的,图3a给出了待生成的目标页面的效果呈现图,图3b给出了目标页面所对应基准页面模板的效果呈现图,可以发现,图3a中目标页面21的生成要求中除了定制化需求的功能,其在场景布局风格以及功能组件展示上基本与图3b中基准页面模板22相匹配,目标页面21相比于基准页面模板22修改了末个元素的展示风格以及多个一个功能按钮。

本实施例下述s202至s204给出了基准页面模板所对应标准配置语法树的获得过程以及目标页面相对基准页面模板的区别元素信息的获得过程。

s202、通过接收所预设回调函数传递的参数信息,从设定存储路径下调取所述基准页面模板对应的标准配置语法树。

在本实施例中,页面模板集合中各页面模板的相关信息已经预先存储在设定的路径下,通过上步骤确定基准页面模板后,可以检测到开发人员构建的回调函数并接收通过该回调函数传递的参数信息,本步骤可以对所接收的参数信息进行分析,从而获得调取基准页面模板所对应标准配置语法树的设定存储路径,进而实现对标准配置语法树的调取。其中,本步骤的回调函数可以基于开发人员在项目开发中预留的外界函数调用接口来实现对所需信息的调取。

s203、通过查找所述基准页面模板对应的可展示代码界面,获得所述基准页面模板包含的元素属性信息。

在本实施例中,基准页面模板通过渲染引擎的渲染可以将页面内容呈现出来,且进行页面内容呈现的基准页面模板还对应了一个可展示代码界面,可展示代码界面中包含了元素属性信息,该元素属性信息实际与用于页面渲染的标准配置语法树对应。

本步骤通过对可展示代码界面的查找遍历,可以获得基准页面模板中标准配置语法树对应的元素属性信息,如,元素属性信息中可以包含对元素节点相关属性信息的描述,可以包含该元素所具备的功能,以及在基准页面模板中的布局位置信息等。

s204、通过将所述页面需求信息与所述元素属性信息的比对,获得所述目标页面相对所述基准页面模板的区别元素信息。

在本实施例中,页面需求信息对应了待生成的目标页面,具体包括了目标页面应该具备的场景布局需求、功能组件以及元素等信息。本步骤可以将目标页面的页面需求信息与上述对应基准页面模板确定出的元素属性信息进行比对,以此确定出目标页面相对基准页面模板具体存在哪些区别,并可基于所存在的区别形成区别元素信息。其中,所述区别元素信息内可以包括目标页面相对基准页面模板中具体增加了哪些元素信息,删减了什么元素信息或者对那些元素信息进行了修改。

本实施例下述s205至s208给出了目标页面生成的具体实现过程。

s205、获取通过对所述区别元素信息转换后形成的带有标识信息的可读信息项。

在本实施例中,上述获得区别元素信息中对区别信息的描述可能是文字性描述,并不能将区别元素信息体现在标准配置语法树的相应位置上,本步骤可以对区别元素信息进行分析和整理,将区别元素信息以符合标准配置语法树相对应的数据结构形式进行转换,形成带有标识信息的可读信息项,所述可读信息项中至少包括了区别元素节点的标识信息以及需要对标识信息对应元素节点进行的操作(删除或修改)。

s206、通过所述页面渲染引擎遍历所述标准配置语法树,确定所述标识信息标识的元素节点在所述标准配置语法树中对应的目标位置。

本步骤相当于通过渲染引擎结合上述可读信息项对标准配置语法树的动态修改。具体的,首先可以通过页面渲染引擎深度遍历标准配置语法树中每个元素节点,以将可读信息项中的标识信息与元素节点的唯一标识进行比对,来确定当前遍历的元素节点是否为待修改或调整的节点。

示例性的,假设所接收的可读信息项中标识信息标识的元素节点与标准配置语法树中的其中一个元素节点的唯一标识匹配,则可将相匹配的该元素节点的位置看做待调整的目标位置,假设不存在所匹配的元素节点,则可认为该标识信息标识的元素节点为在标准配置语法树的基础上新增的节点,通过可读信息项内包括其他信息,可以确定出将该待增加的元素节点与已有节点的关联关系,由此也可以获得该标识信息标识的元素节点在标准配置语法树中的目标位置。

s207、通过所述可读信息项对处于所述目标位置上目标元素节点的属性信息进行更新,形成更新后的目标配置语法树。

本步骤可以在确定出目标位置后,假设目标位置处存在标准配置语法树中的已有元素节点,该已有元素节点可直接作为目标元素节点,并可以对该目标元素节点结合可读信息项中的信息进行内容的修改或者删除的更新操作;假设目标位置处不存在已有的元素节点,相当于目标位置处的目标元素节点为一个待增加的新节点,本步骤可以根据该待新增节点在可读信息项中包含的属性信息进行新增的更新操作,更新后最终可以形成目标配置语法树。

示例性的,接上述实施例一可选实施例中构建页面模板时给出的示例性描述,图3c给出了通过对标准配置语法树的更新形成目标配置语法树的实例展示图。如图3c所示,具体展现了一个目标配置语法树23,该目标配置语法树可以看做是对图2c中所包含配置语法树14的更新,当通过本实施例上述步骤确定出目标页面对应的可读信息项为配置语法树14中其中一个已有元素节点的内容修改时,如假设作为目标元素节点的已有元素节点的唯一标识可以为标识7,由此可以通过本步骤的操作,获得对标识为7的元素节点进行修改更新后形成的目标配置语法树23。可以发现,修改后标识为7的元素节点的元素名称相对配置语法树14中标识为7的原元素节点的元素名称发生了改变,元素名称由原来的‘a’变更为‘div’,相应的,标识为7的元素节点具备的其他属性信息也存在被修改的可能。

s208、对所述目标配置语法树进行渲染生成可呈现的目标页面。

在本实施例中,上述修改标准配置语法树所形成的目标配置语法树,可以再次通过页面渲染引擎的渲染生成可呈现页面内容的目标页面,所生成的目标页面即为满足本实施例所获得的页面需求信息的待编程开发页面。

本发明实施例二提供的一种页面生成方法,具体化了标准配置语法树以及区域元素信息的确定过程,同时具体化了结合页面渲染引擎对标准配置语法树进行修改来生成目标页面的实现过程。本实施例上述技术方案,当存在待生成的具备定制化需求的页面时,能够从已有的页面模板中确定可复用的页面模板并通过对页面模板所对应配置语法树的修改来简单快速的生成满足定制化需求的页面,由此充分利用排至化开发的灵活性和通用性,提高了已开发页面模板的利用率,进而大大提高了待生成页码的开发效率。

作为本发明实施例二提供的一个可选实施例,在本可选实施例中,还具体优化包括了:根据所述目标页面的页面需求信息,确定所述目标页面对应的区别数据内容;将所述区别数据内容及对应的唯一数据标识关联存储在预设的配置数据集中。

需要说明的是,上述实施例提供的页面生成方法,通过对所匹配基准页面模板所对应标准配置语法树的修改生成的目标页面,所生成目标页面的定制化主要体现在页面场景布局以及所具备的功能组件等方面。可能并未涉及目标页面中数据信息的更新。

本可选实施例优化增加了对目标页面中数据信息的更新操作,具体的本可选实施例可首先根据目标页面的页面需求信息,来分析确定目标页面中相对基准页面模板所包含数据信息的区别数据内容,所述区别数据内容中可以需求用户待体现在目标页面中的具体数据信息,该区别数据内容可以通过与基准页面模板所对应页面数据信息的比对来确定;之后,本实施例可以为区别数据内容配置一个相应的唯一数据标识,最终可以将唯一数据标识与所对应目标页面的区别数据内容关联记录并保存在预先设定的配置数据集中。示例性的,图3d给出了一个包含区别数据内容的配置数据集的实例展示图,如图3d所示,数据配置集24中的数据信息通过数据表的形式存储,数据表的第一列为唯一数据标识列,后续各列中包含了不同的目标页面存在的数据信息,以及该条数据信息的记录时间以及信息更新时间等。

可以理解的是,在一个项目的开发过程中,同一时间段内待生成的目标页面可能有多个,因此所述配置数据集中可以汇总不同目标页面对应的区别数据内容,各目标页面的区别数据内容可以用户相应目标页面的生成处理。此外,本实施例还封装形成了一个数据获取函数,同时与固有的功能(埋点,上报以及兼容修复等等)融合形成一个代码块调用器,该代码块调用器可以用于目标页面生成过程中对区别数据内容的有效调取。

同时,在上述优化的基础上,本可选实施例还包括了:接收到通过代码块调用器传入的待调用数据标识后,从所述配置数据集中查找匹配所述待调用数据标识的目标区别数据内容,并将所述目标区别数据内容填充到所述目标页面的相应位置上。

具体的,本可选实施例在上述优化的基础上还给出了目标页面中区别数据内容填充的实现步骤,其中,本步骤的实现中可以实时监测预先编写的代码块调用器是否被调用且有待调用数据标识传入,如果有,则可以接收上述通过代码块调用器传入的待调用数据标识,所述待调用数据标识可以是开发人员根据目标页面的生成需求输入代码块调用器的参数信息,本步骤可以将待调用数据标识与预先所存储配置数据集中记录的各唯一数据标识进行比对,由此可以从配置数据几种查找到与待调用数据标识匹配的唯一数据标识对应的目标区别数据内容,之后可以将获取到的目标区别数据内容填充到目标页面的相应位置上。

本实施例上述提供的可选实施例,具体给出了目标页面中区别于基准页面模板的数据内容确定、保存以及后续目标页面生成过程中所需目标区别数据内容的获取过程。本实施例通过对区别数据内容的唯一数据标识的配置以及后续基于唯一数据标识结合代码块调用器对目标页面内目标区别数据内容的填充,简单快速的实现了目标页面的生成,简化了代码的重复开发,提高了代码的复用率。

实施例三

图4为本发明实施例三提供的一种页面生成装置的结构框图,该装置适用于对具备定制化需求的待生成页面进行页面生成的情况,其中,该装置可以由软件或硬件实现,并一般可集成在计算机设备上。如图4所示,该装置包括:模板确定模块31、语法树确定模块32以及页面呈现模块33。

其中,模板确定模块31,用于根据待生成的目标页面的页面需求信息,从预生成的页面模板集合中确定所述目标页面对应的基准页面模板;

语法树确定模块32,用于调取所述基准页面模板对应的标准配置语法树,并确定所述目标页面相对所述基准页面模板的区别元素信息;

页面呈现模块33,用于根据所述标准配置语法树及所述区别元素信息,结合页面渲染引擎,通过修改所述标准配置语法树生成所述目标页面。

本发明实施例三提供的一种页面生成装置,当存在待生成的具备定制化需求的页面时,能够从已有的页面模板中确定可复用的页面模板并通过对页面模板所对应配置语法树的修改来简单快速的生成满足定制化需求的页面,由此充分利用排至化开发的灵活性和通用性,提高了已开发页面模板的利用率,进而大大提高了待生成页码的开发效率。

进一步地,所述标准配置语法树中包括的各元素节点对应存在属性信息,且所述属性信息中包含相应元素节点的唯一标识;

所述基准页面模板运行后形成的可展示代码界面中包含展现页面场景以及功能元素所对应的元素属性信息。

在上述优化的基础上,语法树确定模块32具体可以用于通过查找所述基准页面模板对应的可展示代码界面,获得所述基准页面模板包含的元素属性信息;通过将所述页面需求信息与所述元素属性信息的比对,获得所述目标页面相对所述基准页面模板的区别元素信息;通过接收所预设回调函数传递的参数信息,从设定存储路径下调取所述基准页面模板对应的标准配置语法树。

进一步地,页面呈现模块33具体可以用于获取通过对所述区别元素信息转换后形成的带有标识信息的可读信息项;通过所述页面渲染引擎遍历所述标准配置语法树,确定所述标识信息标识的元素节点在所述标准配置语法树中对应的目标位置;通过所述可读信息项对处于所述目标位置上目标元素节点的属性信息进行更新,形成更新后的目标配置语法树;对所述目标配置语法树进行渲染生成可呈现的目标页面。

进一步地,该装置还优化包括了模板构建模块,该模板构建模块可以构建页面模板,并将所述页面模板存放在设定路径下的页面模板集合中。

在上述优化的基础上,该模板构建模块具体可以用于获取按照业务场景需求设定的包含各配置节点的页面布局信息;分析所述页面布局信息,并按设定的数据格式配置各所述配置节点的属性信息;根据各所述属性信息确定各所述配置节点的关联关系,并按照所述关联关系生成包含各所述配置节点的文档对象模型;通过渲染引擎对所述文档对象模型的深度遍历形成配置语法树,其中,所述配置语法树包括基于各所述配置节点形成的元素节点,各所述元素节点具备的属性信息中包括所配置的唯一标识;将所述配置语法树封装为接受函数回调的工厂函数,并对所述配置语法树进行渲染生成可呈现的页面模板。

进一步地,该装置还可以包括区别数据确定模块和数据信息存储模块,其中,区别数据确定模块可以用于根据所述目标页面的页面需求信息,确定所述目标页面对应的区别数据内容;数据信息存储模块可以用于将所述区别数据内容及对应的唯一数据标识关联存储在预设的配置数据集中。

在上述实施例的基础上,该装置还可以包括数据内容填充模块,用于接收到通过代码块调用器传入的待调用数据标识后,从所述配置数据集中查找匹配所述待调用数据标识的目标区别数据内容,并将所述目标区别数据内容填充到所述目标页面的相应位置上。

实施例四

图5给出了本发明实施例四提供的一种计算机设备的硬件结构示意图,具体地,该计算机设备包括:处理器和存储装置。存储装置中存储有至少一条指令,且指令由所述处理器执行,使得所述计算机设备执行如上述方法实施例所述的页面生成方法。

参照图5,该计算机设备具体可以包括:处理器40、存储装置41、显示屏42、输入装置43、输出装置44以及通信装置45。该计算机设备中处理器40的数量可以是一个或者多个,图5中以一个处理器40为例。该计算机设备中存储装置41的数量可以是一个或者多个,图5中以一个存储装置41为例。该计算机设备的处理器40、存储装置41、显示屏42、输入装置43、输出装置44以及通信装置45可以通过总线或者其他方式连接,图5中以通过总线连接为例。

存储装置41作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例对应的程序指令/模块(例如,上述实施例所提供页面生成装置中的模板确定模块31、语法树确定模块32以及页面呈现模块33等)。存储装置41可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作装置、至少一个功能所需的应用程序;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储装置41可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置41可进一步包括相对于处理器40远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

一般而言,显示屏42用于根据处理器40的指示显示数据,还用于接收作用于显示屏42的触摸操作,并将相应的信号发送至处理器40或其他装置。可选的,当显示屏42为红外屏时,其还包括红外触摸框,该红外触摸框设置在显示屏42的四周,其还可以用于接收红外信号,并将该红外信号发送至处理器40或者其他计算机设备。

通信装置45,用于与其他计算机设备建立通信连接,其可以是有线通信装置和/或无线通信装置。

输入装置43可用于接收输入的数字或者字符信息,以及产生与计算机设备的用户设置以及功能控制有关的键信号输入,还可以是用于获取图像的摄像头以及获取视频数据中音频的拾音设备。输出装置44可以包括显示屏等视频计算机设备以及扬声器等音频设备。需要说明的是,输入装置43和输出装置44的具体组成可以根据实际情况设定。

处理器40通过运行存储在存储装置41中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述的页面生成方法。

具体的,实施例中,处理器40执行存储装置41中存储的一个或多个程序时,具体实现如下操作:根据待生成的目标页面的页面需求信息,从预生成的页面模板集合中确定所述目标页面对应的基准页面模板;调取所述基准页面模板对应的标准配置语法树,并确定所述目标页面相对所述基准页面模板的区别元素信息;根据所述标准配置语法树及所述区别元素信息,结合页面渲染引擎,通过修改所述标准配置语法树生成所述目标页面。

本发明实施例还提供一种计算机可读存储介质,所述存储介质中的程序由计算机设备的处理器执行时,使得计算机设备能够执行如上述实施例所述的页面生成方法。示例性的,上述实施例所述的页面生成方法包括:根据待生成的目标页面的页面需求信息,从预生成的页面模板集合中确定所述目标页面对应的基准页面模板;调取所述基准页面模板对应的标准配置语法树,并确定所述目标页面相对所述基准页面模板的区别元素信息;根据所述标准配置语法树及所述区别元素信息,结合页面渲染引擎,通过修改所述标准配置语法树生成所述目标页面。

需要说明的是,对于装置、计算机设备、存储介质实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是机器人,个人计算机,服务器,或者网络设备等)执行本发明任意实施例所述的页面生成方法。

值得注意的是,上述页面生成装置中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行装置执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1