一种动态生成视图组件的方法及装置制造方法及图纸

技术编号:30783305 阅读:14 留言:0更新日期:2021-11-16 07:44
本发明专利技术公开了一种动态生成视图组件的方法及装置,所述方法包括:解析预设的描述文本,获取组件属性描述协议数组;遍历所述组件属性描述协议数组中的数组元素,根据最小粒度UI模块加载器加载对应所述数组元素的UI模块,将所述数组元素传入所述UI模块进行处理,获取组件信息对象;根据组件加载渲染器将所述组件信息对象加载出可视化视图。本发明专利技术通过获取组件属性描述协议数组以及明确对应的UI模块,最终生成完整的组件信息对象,提高组件构造的效率。提高组件构造的效率。提高组件构造的效率。

【技术实现步骤摘要】
一种动态生成视图组件的方法及装置


[0001]本专利技术涉及Web前端
,尤其涉及一种动态生成视图组件的方法及装置。

技术介绍

[0002]随着Internet的快速发展,信息技术化的要求,企业需要具有快速开发能力的零代码平台来进行迅速的、高效的数字化转型,一个高效的零代码平台通常采用无代码开发,通过拖拽组件方式进行表单设计,普遍存在一个实现难点是大量内置组件的属性配置繁多,公共属性,特殊业务属性,相同属性但不同交互方式,需要实现大量视图组件和业务逻辑,在开发和后续维护问题上都有很大的成本损耗,不能满足现代企业多变的需求。
[0003]目前开发零代码平台组件构建的常用方案是通过开发者实现一个个独立的组件视图去构建零代码平台的标准组件,每个组件都是数据和业务逻辑独立的模块,组件的属性配置,业务交互都强耦合,这种实现方式不能满足组件库快速更新以及灵活多变的各个属性配置的业务变更场景,每次新增组件都是全新开发,每次修改调整都需要独立去修改所有相关组件。
[0004]然而,现有技术实现配置视图组件的方式是通过独立开发出每个组件的内容去实现的,组件的共性部分不能被很好的利用,而常规的模块封装方式又不能很好的使用业务变更部分的动态修改,导致重复工作量大,零代码平台在接入不同行业需要快速提供不同的业务组件以及在处理每个企业个性化需求的时候对组件高效开发快速迭代的诉求无法满足。

技术实现思路

[0005]本专利技术目的在于,提供一种动态生成视图组件的方法,以解决组件开发效率低的问题。
[0006]为实现上述目的,本专利技术提供一种动态生成视图组件的方法,包括:
[0007]解析预设的描述文本,获取组件属性描述协议数组;
[0008]遍历所述组件属性描述协议数组中的数组元素,根据最小粒度UI模块加载器加载对应所述数组元素的UI模块,将所述数组元素传入所述UI模块进行处理,获取组件信息对象;
[0009]根据组件加载渲染器将所述组件信息对象加载出可视化视图。
[0010]优选地,所述解析预设的描述文本,获取组件属性描述协议数组,包括:
[0011]根据预设的业务组件清单,搭建快速拍照组件;
[0012]根据预设的构造器引擎解析所述快速拍照组件中的一级属性名,获取组件属性描述协议数组。
[0013]优选地,所述遍历所述组件属性描述协议数组中的数组元素,根据最小粒度UI模块加载器加载对应所述数组元素的UI模块,将所述数组元素传入所述UI模块进行处理,获取组件信息对象,包括:
[0014]根据监测所述数组元素的一级属性名,更新组件协议对象的同名属性值,并加载所述数组元素中其他属性的逻辑处理模块。
[0015]优选地,所述加载所述数组元素中其他属性的逻辑处理模块,包括:
[0016]加载所述逻辑处理模块确定是否存在属性描述文本,若存在则进一步判断所述属性是否隐藏,若不隐藏则显示所述属性配置,解析属性配置的钩子函数,获取组件信息对象。
[0017]本专利技术还提供一种动态生成视图组件的装置,包括:
[0018]第一获取模块,用于解析预设的描述文本,获取组件属性描述协议数组;
[0019]第二获取模块,用于遍历所述组件属性描述协议数组中的数组元素,根据最小粒度UI模块加载器加载对应所述数组元素的UI模块,将所述数组元素传入所述UI模块进行处理,获取组件信息对象;
[0020]生成模块,用于根据组件加载渲染器将所述组件信息对象加载出可视化视图。
[0021]优选地,所述第一获取模块,还用于:
[0022]根据预设的业务组件清单,搭建快速拍照组件;
[0023]根据预设的构造器引擎解析所述快速拍照组件中的一级属性名,获取组件属性描述协议数组。
[0024]优选地,所述第二获取模块,还用于:
[0025]根据监测所述数组元素的一级属性名,更新组件协议对象的同名属性值,并加载所述数组元素中其他属性的逻辑处理模块。
[0026]优选地,所述生成模块,还用于:
[0027]加载所述逻辑处理模块确定是否存在属性描述文本,若存在则进一步判断所述属性是否隐藏,若不隐藏则显示所述属性配置,解析属性配置的钩子函数,获取组件信息对象。
[0028]本专利技术还提供一种计算机终端设备,包括一个或多个处理器和存储器。存储器与所述处理器耦接,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述任一实施例所述的动态生成视图组件的方法。
[0029]本专利技术还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如上述任一实施例所述的动态生成视图组件的方法。
[0030]本专利技术解析预设的描述文本,获取组件属性描述协议数组,遍历组件属性描述协议数组中的数组元素,根据最小粒度UI模块加载器加载对应所述数组元素的UI模块,将数组元素传入UI模块进行处理,获取组件信息对象,根据组件加载渲染器将所述组件信息对象加载出可视化视图,提高构建组件的效率。
附图说明
[0031]为了更清楚地说明本专利技术的技术方案,下面将对实施方式中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0032]图1是本专利技术某一实施例提供的动态生成视图组件的方法的流程示意图;
[0033]图2是本专利技术某一实施例提供的动态生成视图组件的装置的结构示意图。
具体实施方式
[0034]下面将结合本专利技术中的附图,对本专利技术中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0035]应当理解,文中所使用的步骤编号仅是为了方便描述,不作为对步骤执行先后顺序的限定。
[0036]应当理解,在本专利技术说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本专利技术。如在本专利技术说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
[0037]术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
[0038]术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
[0039]请参阅图1,本专利技术提供一种动态生成视图组件的方法,包括:
[0040]S101、解析预设的描述文本,获取组件属性描述协议数组。
[0041]具体的,定义描述文本(ControlDesc)本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种动态生成视图组件的方法,其特征在于,包括:解析预设的描述文本,获取组件属性描述协议数组;遍历所述组件属性描述协议数组中的数组元素,根据最小粒度UI模块加载器加载对应所述数组元素的UI模块,将所述数组元素传入所述UI模块进行处理,获取组件信息对象;根据组件加载渲染器将所述组件信息对象加载出可视化视图。2.根据权利要求1所述的动态生成视图组件的方法,其特征在于,所述解析预设的描述文本,获取组件属性描述协议数组,包括:根据预设的业务组件清单,搭建快速拍照组件;根据预设的构造器引擎解析所述快速拍照组件中的一级属性名,获取组件属性描述协议数组。3.根据权利要求2所述的动态生成视图组件的方法,其特征在于,所述遍历所述组件属性描述协议数组中的数组元素,根据最小粒度UI模块加载器加载对应所述数组元素的UI模块,将所述数组元素传入所述UI模块进行处理,获取组件信息对象,包括:根据监测所述数组元素的一级属性名,更新组件协议对象的同名属性值,并加载所述数组元素中其他属性的逻辑处理模块。4.根据权利要求3所述的动态生成视图组件的方法,其特征在于,所述加载所述数组元素中其他属性的逻辑处理模块,包括:加载所述逻辑处理模块确定是否存在属性描述文本,若存在则进一步判断所述属性是否隐藏,若不隐藏则显示所述属性配置,解析属性配置的钩子函数,获取组件信息对象。5.一种动态生成视图组件的装置,其特征在于,包括:第一获取模块,用于解析预设的描述文本,获取组件属性描述协议数组;第二获取模块,用...

【专利技术属性】
技术研发人员:黄晓星苏滨
申请(专利权)人:广州市玄武无线科技股份有限公司
类型:发明
国别省市:

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

1