一种表单页面构建方法、装置、设备及存储介质制造方法及图纸

技术编号:38350372 阅读:25 留言:0更新日期:2023-08-05 17:24
本申请公开了一种表单页面构建方法、装置、设备及存储介质,涉及计算机技术领域,包括:将目标低代码表单引擎与目标表单设计器进行封装,得到封装后引擎和封装后表单设计器;发布与当前需求对应的目标拓展包,将解析所述目标拓展包得到的解析后信息发送至所述封装后引擎和所述封装后表单设计器;基于所述解析后信息以及所述封装后引擎和所述封装后表单设计器渲染对应的组件,以得到渲染后组件;基于所述渲染后组件构建目标表单页面。本申请通过发布与当前需求对应的目标拓展包,在不改变原有架构的基础上,通过所述目标拓展包修改对应的组件信息,通过拓展包方式将需求和控件分离,并通过直接传入拓展包减少传参与耦合的过程,简化了操作流程。简化了操作流程。简化了操作流程。

【技术实现步骤摘要】
一种表单页面构建方法、装置、设备及存储介质


[0001]本专利技术涉及计算机
,特别涉及一种表单页面构建方法、装置、设备及存储介质。

技术介绍

[0002]目前页面中的表单基本都是开发人员将业务确定的表单组件一个一个写入源码文件,并在编译和部署到服务器后,用户才能够在浏览器中看到新的表单内容,同时在开发完毕后需要测试后才能够给用户使用,过程漫长且效率缓慢。现有的react(一种生成浏览器页面的框架)可用的低代码表单引擎有family、form

render、gaea

editor等,family使用了较新的技术,传统的ie浏览器不能支持;gaea

editor用户无法自定义业务需要的id(代表某个表单项的字段名称),同时只能拓展自定义的控件,无法拓展联动等功能,拓展控件也必须修改源码;form

render表单设计器使用react的useContext实现,每次点击某个组件时,即便没有进行数据的修改,整个表单设计器内部所有组件都会重新计算和渲染,从而导致卡顿。并且因为form

render只提供了有限的几个参数和钩子函数,可以对某个只能拓展自定义表单组件,如果某个控件需要同时使用多个参数调用多个钩子函数完成一个需求,必须将控件的代码逻辑分散传给form

render的多个参数和钩子函数接收,当这种复杂控件有很多时代码极为混乱无法维护,并且业务中的自定义控件组一般只能修改有限的表单内容,但是form

render的表单设计器中由于其最小选择单位和修改单位就是一个表单控件,所以只能使用单独控件组合成的大的控件组,但是这种组合控件组中的控件可以互相拖拽调换位置甚至删除,同时每一个子控件的每一个字段都可以修改,难以配置出只能修改组件名称和自定义id字段其他的控件组。

技术实现思路

[0003]有鉴于此,本专利技术的目的在于提供一种表单页面构建方法、装置、设备和存储介质,能够通过直接传入拓展包减少传参与耦合的过程,简化了操作流程。其具体方案如下:
[0004]第一方面,本申请公开了一种表单页面构建方法,包括:
[0005]将目标低代码表单引擎与目标表单设计器进行封装,以得到封装后引擎和封装后表单设计器;
[0006]发布与当前需求对应的目标拓展包,并将解析所述目标拓展包得到的解析后信息发送至所述封装后引擎和所述封装后表单设计器;
[0007]基于所述解析后信息以及所述封装后引擎和所述封装后表单设计器渲染对应的组件,以得到渲染后组件;
[0008]基于所述渲染后组件构建目标表单页面。
[0009]可选的,所述将目标低代码表单引擎与目标表单设计器进行封装之前,还包括:
[0010]利用mobx替换原始框架中的useContext,以得到目标框架,并基于所述目标框架得到所述目标表单设计器。
[0011]可选的,所述发布与当前需求对应的目标拓展包,并将解析所述目标拓展包得到的解析后信息发送至所述封装后引擎和所述封装后表单设计器,包括:
[0012]以需求为单位或以空间为单位单独发布针对自定义表单控件的所述目标拓展包;
[0013]获取所述目标拓展包中的第一目标拓展包,并将解析所述第一目标拓展包得到的第一解析后信息发送至所述封装后引擎;
[0014]获取所述目标拓展包中的第二目标拓展包,并将解析所述第二目标拓展包得到的第二解析后信息发送至所述封装后表单设计器。
[0015]可选的,所述将解析所述目标拓展包得到的解析后信息发送至所述封装后引擎和所述封装后表单设计器,包括:
[0016]从所述目标拓展包中获取解析参数;
[0017]利用所述解析参数解析所述目标拓展包,以得到目标钩子参数集合;
[0018]将所述目标参数钩子集合发送至所述封装后引擎和所述封装后表单设计器。
[0019]可选的,所述利用所述解析参数解析所述目标拓展包,以得到目标钩子参数集合,包括:
[0020]当所述目标拓展包为所述第一目标拓展包时,利用所述解析参数解析所述第一目标拓展包,以得到第一控件钩子、数据变化钩子以及表单页面渲染钩子;
[0021]当所述目标拓展包为所述第二目标拓展包时,利用所述解析参数解析所述第二目标拓展包,以得到第二控件钩子、控件界面渲染钩子以及控件属性设置界面渲染钩子;
[0022]相应的,所述将所述目标参数钩子集合发送至所述封装后引擎和所述封装后表单设计器,包括:
[0023]将所述第一控件钩子、所述数据变化钩子以及所述表单页面渲染钩子分开传入至所述封装后引擎;
[0024]将所述第二控件钩子、所述控件界面渲染钩子以及所述控件属性设置界面渲染钩子分开传入至所述封装后表单设计器。
[0025]可选的,所述将所述目标参数钩子集合发送至所述封装后引擎和所述封装后表单设计器之后,还包括:
[0026]调用所述第一控件钩子,以便从所述第一目标拓展包中获取当前控件,并将所述当前控件发送至所述封装后引擎;
[0027]基于所述当前控件确定目标控件组,并将所述目标控件组传入至所述目标低代码表单引擎;
[0028]调用所述数据变化钩子,以便从所述第一目标拓展包中获取第一监听数据修改代码,并将所述第一监听数据修改代码传入至所述目标低代码表单引擎中的watch参数接收区域;
[0029]调用所述表单页面渲染钩子,以便从所述第一目标拓展包中获取第二监听数据修改代码,并将所述第二监听数据修改代码传入至所述目标低代码表单引擎中的onMounted参数接收区域;
[0030]调用所述第二控件钩子,以便通过预设控件确定方式获取目标控件数组,并将所述目标控件数组发送至所述封装后表单设计器的数据中心;
[0031]在所述封装后表单设计器的控件面板渲染前调用所述控件界面渲染钩子,以便基
于所述目标控件数组对所述控件面板进行修改,以得到修改后控件面板;
[0032]在所述封装后表单设计器的属性设置面板渲染前调用所述控件属性设置界面渲染钩子,以便用户根据所述修改后控件面板确定当前控件集合后,基于所述用户在所述封装后表单设计器的控件拖拽区域的所述当前控件集合中选择的目标控件生成对应的目标控件属性设置面板。
[0033]可选的,所述基于所述渲染后组件构建目标表单页面之后,还包括:
[0034]判断所述渲染后组件中的数据是否变化;
[0035]若所述渲染后组件中的数据变化,则根据变化后组件重新渲染所述目标表单页面,以得到更新后表单页面。
[0036]第二方面,本申请公开了一种表单页面构建装置,包括:
[0037]封装模块,用于将目标低代码表单引擎与目标表单设计器进行封装,以得到封装后引擎和封装后表单设计器;
[0038]信息发送模块,用于发布与当前需求对应的目标拓展包,并将解析所述目标拓展包本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种表单页面构建方法,其特征在于,包括:将目标低代码表单引擎与目标表单设计器进行封装,以得到封装后引擎和封装后表单设计器;发布与当前需求对应的目标拓展包,并将解析所述目标拓展包得到的解析后信息发送至所述封装后引擎和所述封装后表单设计器;基于所述解析后信息以及所述封装后引擎和所述封装后表单设计器渲染对应的组件,以得到渲染后组件;基于所述渲染后组件构建目标表单页面。2.根据权利要求1所述的表单页面构建方法,其特征在于,所述将目标低代码表单引擎与目标表单设计器进行封装之前,还包括:利用mobx替换原始框架中的useContext,以得到目标框架,并基于所述目标框架得到所述目标表单设计器。3.根据权利要求1所述的表单页面构建方法,其特征在于,所述发布与当前需求对应的目标拓展包,并将解析所述目标拓展包得到的解析后信息发送至所述封装后引擎和所述封装后表单设计器,包括:以需求为单位或以空间为单位单独发布针对自定义表单控件的所述目标拓展包;获取所述目标拓展包中的第一目标拓展包,并将解析所述第一目标拓展包得到的第一解析后信息发送至所述封装后引擎;获取所述目标拓展包中的第二目标拓展包,并将解析所述第二目标拓展包得到的第二解析后信息发送至所述封装后表单设计器。4.根据权利要求3所述的表单页面构建方法,其特征在于,所述将解析所述目标拓展包得到的解析后信息发送至所述封装后引擎和所述封装后表单设计器,包括:从所述目标拓展包中获取解析参数;利用所述解析参数解析所述目标拓展包,以得到目标钩子参数集合;将所述目标参数钩子集合发送至所述封装后引擎和所述封装后表单设计器。5.根据权利要求4所述的表单页面构建方法,其特征在于,所述利用所述解析参数解析所述目标拓展包,以得到目标钩子参数集合,包括:当所述目标拓展包为所述第一目标拓展包时,利用所述解析参数解析所述第一目标拓展包,以得到第一控件钩子、数据变化钩子以及表单页面渲染钩子;当所述目标拓展包为所述第二目标拓展包时,利用所述解析参数解析所述第二目标拓展包,以得到第二控件钩子、控件界面渲染钩子以及控件属性设置界面渲染钩子;相应的,所述将所述目标参数钩子集合发送至所述封装后引擎和所述封装后表单设计器,包括:将所述第一控件钩子、所述数据变化钩子以及所述表单页面渲染钩子分开传入至所述封装后引擎;将所述第二控件钩子、所述控件界面渲染钩子以及所述控件属性设置界面渲染钩子分开传入至所述封装后表单设计器。6.根据权利要求5所述的表单页面构建方法,其特征在于,所...

【专利技术属性】
技术研发人员:张雪涛
申请(专利权)人:招银云创信息技术有限公司
类型:发明
国别省市:

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

1