代码生成方法、装置、电子设备、存储介质制造方法及图纸

技术编号:31575875 阅读:21 留言:0更新日期:2021-12-25 11:17
本发明专利技术公开了代码生成方法、装置、电子设备、存储介质。所述代码生成方法包括:响应于针对前端页面代码的生成请求,确定对应于生成请求的代码模板;确定所述代码模板中的待配置参数,所述待配置参数包括以下至少之一:前端页面包含的组件的组件名称、对应于所述组件名称的属性和对应于所述组件名称的事件;其中,所述属性的取值的数据类型是数组且所述属性动态绑定至对应于所述组件的第一数据源,所述事件的数据类型是数组且所述事件动态绑定至对应于所述组件的第二数据源;获取各个待配置参数的取值,并将所述取值导入所述代码模板,以生成所述前端页面代码。从而用户可以根据实际需求对待配置参数进行配置。需求对待配置参数进行配置。需求对待配置参数进行配置。

【技术实现步骤摘要】
代码生成方法、装置、电子设备、存储介质


[0001]本专利技术涉及计算
,尤其涉及一种代码生成方法、装置、电子设备、存储介质。

技术介绍

[0002]为了提高开发人员的代码开发效率,目前越来越多的开发系统能够实现代码的自动编写或者半自动编写。然而关于渲染代码,目前均是根据实际应用场景的需求撰写,无法适用于不同的页面框架,复用率低。

技术实现思路

[0003]本专利技术要解决的技术问题是为了克服现有技术中渲染代码是根据应用场景的需求撰写,无法适用于不同的页面框架,复用率低的缺陷,提供一种代码生成方法、装置、电子设备、存储介质。
[0004]本专利技术是通过下述技术方案来解决上述技术问题:
[0005]第一方面,提供一种代码生成方法,应用于电子设备,所述代码生成方法包括:
[0006]响应于针对前端页面代码的生成请求,确定对应于生成请求的代码模板;
[0007]确定所述代码模板中的待配置参数,所述待配置参数包括以下至少之一:前端页面包含的组件的组件名称、对应于所述组件名称的属性和对应于所述组件名称的事件;其中,所述属性的取值的数据类型是数组且所述属性动态绑定至对应于所述组件的第一数据源,所述事件的数据类型是数组且所述事件动态绑定至对应于所述组件的第二数据源;
[0008]获取各个待配置参数的取值,并将所述取值导入所述代码模板,以生成所述前端页面代码。
[0009]可选地,确定所述代码模板中的待配置参数,包括:
[0010]若所述代码模板为基于template标签得到的模板,则将所述代码模板转换成json格式;
[0011]确定json格式的代码模板中的待配置参数。
[0012]可选地,所述生成请求包括所述前端页面代码的类型;
[0013]所述第一数据源和所述第二数据源与所述前端页面代码的类型相关联。
[0014]可选地,所述前端页面代码的类型包括uni

app和element

ui。
[0015]可选地,所述生成请求包含配置需求信息;所述电子设备存储有用于实现不同功能的模板子代码;
[0016]所述代码生成方法还包括:
[0017]从所述电子设备存储的模板子代码,确定与所述配置需求信息相匹配的目标模板子代码;
[0018]将所述目标模板子代码组合成所述代码模板。
[0019]可选地,所述待配置参数包括组件与数据表的表结构的对应关系;所述数据表用
于记录对应于所述组件的业务数据;所述代码生成方法还包括:
[0020]根据所述对应关系,建立所述组件与所述数据表的字段的关联关系;
[0021]将所述关联关系导入代码模板,以生成对应于所述前端页面的后端代码。
[0022]第二方面,提供一种代码生成装置,应用于电子设备,所述代码生成装置包括:
[0023]第一确定模块,用于响应于针对前端页面代码的生成请求,确定对应于生成请求的代码模板;
[0024]第二确定模块,用于确定所述代码模板中的待配置参数,所述待配置参数包括以下至少之一:前端页面包含的组件的组件名称、对应于所述组件名称的属性和对应于所述组件名称的事件;其中,所述属性的取值的数据类型是数组且所述属性用于绑定至对应于所述组件的第一数据源,所述事件的数据类型是数组且所述事件用于绑定至对应于所述组件的第二数据源;
[0025]第一导入模块,用于获取各个待配置参数的取值,并将所述取值导入所述代码模板,以生成所述前端页面代码。
[0026]可选地,所述第二确定模包括:
[0027]转换单元,用于在所述代码模板为基于template标签得到的模板的情况下,将所述代码模板转换成json格式;
[0028]确定单元,用于确定json格式的代码模板中的待配置参数。
[0029]可选地,所述生成请求包括所述前端页面代码的类型;
[0030]所述第一数据源和所述第二数据源与所述前端页面代码的类型相关联。
[0031]可选地,所述前端页面代码的类型包括uni

app和element

ui。
[0032]可选地,所述生成请求包含配置需求信息;所述电子设备存储有用于实现不同功能的模板子代码;
[0033]所述代码生成装置还包括:
[0034]第三确定模块,用于从所述电子设备存储的模板子代码,确定与所述配置需求信息相匹配的目标模板子代码,并将所述目标模板子代码组合成所述代码模板。
[0035]可选地,所述待配置参数包括组件与数据表的表结构的对应关系;所述数据表用于记录对应于所述组件的业务数据;所述代码生成装置还包括:
[0036]建立模块,用于根据所述对应关系,建立所述组件与所述数据表的字段的关联关系;
[0037]第二导入模块,用于将所述关联关系导入代码模板,以生成对应于所述前端页面的后端代码。
[0038]第三方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述任一项所述的代码生成方法。
[0039]第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述任一项所述的代码生成方法的步骤。
[0040]本专利技术的积极进步效果在于:专利技术实施例中,待配置参数的属性和事件是动态绑定的,相当于开放了render待配置参数的属性和事件的配置接口,从而用户可以根据实际需求对待配置参数进行配置。且通过属性和事件的方式配置待配置参数,可以适用于各类
代码开发语言的场景,使得利用一套代码模板开发得到多种语言代码成为了可能。
附图说明
[0041]图1为本专利技术一示例性实施例提供的一种代码生成方法的流程图;
[0042]图2为本专利技术一示例性实施例提供的另一种代码生成方法的流程图;
[0043]图3为本专利技术一示例性实施例提供的一种用于实现代码生成方法的平台的架构分层图;
[0044]图4为本专利技术一示例性实施例提供的一种代码生成装置的模块示意图;
[0045]图5为本专利技术一示例实施例示出的一种电子设备的结构示意图。
具体实施方式
[0046]下面通过实施例的方式进一步说明本专利技术,但并不因此将本专利技术限制在所述的实施例范围之中。
[0047]图1为本专利技术一示例性实施例提供的一种代码生成方法的流程图,该方法应用于电子设备,参见图1,该方法包括以下步骤:
[0048]步骤101、响应于针对前端页面代码的生成请求,确定对应于生成请求的代码模板。
[0049]在一个实施例中,电子设备存储有多段模板子代码,不同的模板子代码用于实现不同的功能(或者服务),该功能与前端页面生成相关。开发人员可以根据对前端页面的实际业务需求提供配置需求信息,以供后续确定与配置需本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种代码生成方法,其特征在于,应用于电子设备,所述代码生成方法包括:响应于针对前端页面代码的生成请求,确定对应于生成请求的代码模板;确定所述代码模板中的待配置参数,所述待配置参数包括以下至少之一:前端页面包含的组件的组件名称、对应于所述组件名称的属性和对应于所述组件名称的事件;其中,所述属性的取值的数据类型是数组且所述属性动态绑定至对应于所述组件的第一数据源,所述事件的数据类型是数组且所述事件动态绑定至对应于所述组件的第二数据源;获取各个待配置参数的取值,并将所述取值导入所述代码模板,以生成所述前端页面代码。2.根据权利要求1所述的代码生成方法,其特征在于,确定所述代码模板中的待配置参数,包括:若所述代码模板为基于template标签得到的模板,则将所述代码模板转换成json格式;确定json格式的代码模板中的待配置参数。3.根据权利要求1所述的代码生成方法,其特征在于,所述生成请求包括所述前端页面代码的类型;所述第一数据源和所述第二数据源与所述前端页面代码的类型相关联。4.根据权利要求1所述的代码生成方法,其特征在于,所述前端页面代码的类型包括uni

app和element

ui。5.根据权利要求1所述的代码生成方法,其特征在于,所述生成请求包含配置需求信息;所述电子设备存储有用于实现不同功能的模板子代码;所述代码生成方法还包括:从所述电子设备存储的模板子代码,确定与所述配置需求信息相匹配的目标模板子代码;将所述目标模板子代码组合成所述代码模板。6.根据权利要求1所述的代码生成方法,其特征在于,所述待配置参数包括组件与数据表的表结构的对应关系;所述数据表用于记录对应于所述组件的业务数据;所述代码生成方法还包括:根据所述对应关系,建立所述组件与所述数据表的字段的关联关系;将所述关联关系导入代码模板,以生成对应于所述前端页面的后端代码。7.一种代码生成装置,其特征在于,应用于电子设备,所述代码生成装置包括:第...

【专利技术属性】
技术研发人员:魏杰
申请(专利权)人:欧电云信息科技江苏有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1