CN117215585A - 一种可视化描述以及动态控制界面组件属性的方法及装置 - Google Patents
一种可视化描述以及动态控制界面组件属性的方法及装置 Download PDFInfo
- Publication number
- CN117215585A CN117215585A CN202311488719.XA CN202311488719A CN117215585A CN 117215585 A CN117215585 A CN 117215585A CN 202311488719 A CN202311488719 A CN 202311488719A CN 117215585 A CN117215585 A CN 117215585A
- Authority
- CN
- China
- Prior art keywords
- attribute
- value
- interface
- interface component
- component
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 230000000007 visual effect Effects 0.000 title claims abstract description 49
- 230000014509 gene expression Effects 0.000 claims abstract description 46
- 238000012800 visualization Methods 0.000 claims abstract description 6
- 230000006870 function Effects 0.000 claims description 70
- 230000001276 controlling effect Effects 0.000 claims description 27
- 238000012544 monitoring process Methods 0.000 claims description 6
- 238000011161 development Methods 0.000 abstract description 13
- 238000004883 computer application Methods 0.000 abstract description 2
- 239000000306 component Substances 0.000 description 116
- 230000008569 process Effects 0.000 description 14
- 230000000875 corresponding effect Effects 0.000 description 10
- 230000008859 change Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000002708 enhancing effect Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000001149 cognitive effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000010195 expression analysis Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 101100496854 Caenorhabditis elegans col-12 gene Proteins 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000019771 cognition Effects 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Abstract
本发明涉及计算机应用技术领域,提供了一种可视化描述以及动态控制界面组件属性的方法及装置,该方法包括三个主要步骤:一、以属性对象形式描述界面组件属性;二、使用组合属性编辑器编辑界面组件属性值;三、将属性对象应用于前端组件。通过属性对象形式描述界面组件属性,采用文档形式描述所有可视化元素,并在界面组件对象中使用属性对象描述前端组件的属性。属性对象包括属性名为键、属性值对象为值的键值对,属性值对象结构包括值类型和值表达式。本发明的方法及装置提供了一种灵活、可视化的界面组件属性描述和动态控制方案,可极大提高低代码页面设计器的开发效率和用户体验。
Description
技术领域
本发明涉及计算机应用技术领域,具体涉及一种可视化描述以及动态控制界面组件属性的方法及装置。
背景技术
在低代码领域,低代码厂商一般均采用JSON文档方式描述界面元素及其属性,属性值对应与前端组件的实际属性。对于前端组件的状态属性,例如:只读、必填、是否可见、禁用等,均在JSON文档中使用布尔值表示。在低代码实际开发场景中,经常出现根据动态条件控制前端组件状态的场景,对与这种场景,一般在低代码设计器中提供诸如表达式等规则进行控制,这些规则是独立与组件属性的附加属性。在页面文档中就会出现多个描述控制同一组件属性的情况,例如:文本框的只读属性被设置为否,但是又定义了只读表达式规则,当单据状态字段为已提交时,文本框处于只读状态。这种分裂的属性配置,既不利用开发者直观理解文本框是否被设置为只读,也不利用软件控制文本框状态,会因为应用多条规则的优先级不完善,增加出现软件错误的风险。
采用低代码开发工具开发可视化界面时,通常需要控制界面元素可视化状态,UI组件的可视化状态,例如:是否可见、只读、必填等,通常为组件的布尔值属性,一般通过可视化页面设计器直接为UI组件属性赋值进行控制。在具体业务场景中,也经常遇到需要根据业务规则动态控制界面元素状态的场景,通常会通过脚本表达式、权限规则、界面状态机等满足此类需求。以上控制方式是独立与UI组件布尔属性的规则,开发者往往需要在可视化低代码页面设计器的不同界面单独配置规则,当多个规则同时作用于同一UI组件属性时,即不利用开发者理解,也不利用程序控制。
发明内容
有鉴于此,为让开发者在设计时直观理解界面元素状态,同时降低软件应用规则的复杂度,本发明提供了一种直观定义界面控制规则的方式,简化开发者认知、避免程序控制冲突的可视化描述以及动态控制界面组件属性的方法及装置,整合表示各类规则属性值的方式,将多条规则合并为一处,从而降低开发者认知负担,提升软件质量。
基于上述目的,第一方面,本发明提供了一种可视化描述以及动态控制界面组件属性的方法,包括以下步骤:
a.使用属性对象形式描述所有可视化元素,并在界面组件对象中以属性对象描述前端组件的属性,其中属性对象由属性名为键、属性值对象为值的键值对组成。
b.所述属性值对象的结构包括值类型和值表达式,其中值类型包括常量、变量、表达式、状态机、自定义函数五种类型,值表达式以字符串形式保存指定类型的属性值。
作为本发明的进一步方案,属性值类型为常量时,采用默认编辑器展示该属性的实际类型,如布尔类型时展示下拉选择框「是」「否」,枚举值时展示可选枚举值下拉选择框,数值时采用数字输入框,文本值时采用文本输入框。
作为本发明的进一步方案,属性值类型为变量时,使用参照选择文本框展示,并通过选择界面供开发者选择应用的变量。
作为本发明的进一步方案,属性值类型为表达式时,使用参照选择文本框展示,并通过可视化页面表达式编辑器界面供开发者编辑和选择表达式。
作为本发明的进一步方案,属性值类型为状态机时,使用参照选择文本框展示,并通过选择界面状态机状态界面供开发者选择当前界面状态。
作为本发明的进一步方案,属性值类型为自定义函数时,使用文本框供开发者直接编写JavaScript表达式。
作为本发明的进一步方案,将属性对象转换为取值函数,根据属性值类型不同,实现获取常量值、变量值、表达式结果、状态机状态或执行自定义函数的取值逻辑。
建立取值函数字典,以UI组件标识和属性名为键,取值函数为值。
通过数据绑定将取值函数绑定至UI组件具体属性,并监听所引用的变量、状态机的变化,实现动态控制界面组件属性的功能。
作为本发明的进一步方案,取值函数字典用于存储各UI组件标识及属性名对应的取值函数,以实现属性值的动态更新和界面组件的动态展示。
第二方面,本发明还提供了一种可视化描述以及动态控制界面组件属性的装置,包括:
低代码页面设计器,用于以文档形式描述所有可视化元素,并在界面组件对象中使用属性对象描述前端组件的属性。
界面组件文档对象,用于存储文档形式描述的可视化元素信息。
为本发明的进一步方案,所述界面组件文档对象用于存储属性对象,该属性对象由属性名为键、属性值对象为值的键值对组成,属性值对象结构包括值类型和值表达式。
本发明的又一方面,还提供了一种计算机设备,包括存储器和处理器,该存储器中存储有计算机程序,该计算机程序被处理器执行时执行上述任一项根据本发明的可视化描述以及动态控制界面组件属性的方法。
本发明的再一方面,还提供了一种计算机可读存储介质,存储有计算机程序指令,该计算机程序指令被执行时实现上述任一项根据本发明的可视化描述以及动态控制界面组件属性的方法。
与现有技术相比较而言,本发明提出的一种可视化描述以及动态控制界面组件属性的方法及装置,具有以下有益效果:
1. 简化界面组件属性描述:该方法及装置以属性对象形式描述界面组件属性,使得界面组件属性的描述更加简洁和直观。开发人员可以通过属性名和属性值对象快速了解和配置界面组件的属性,提高开发效率。
2. 可视化编辑属性值:采用组合属性编辑器,该方法提供了一种可视化编辑界面组件属性值的方式。开发人员可以通过下拉选择框和不同类型的编辑器轻松选择和设置属性值,而不必手动输入复杂的代码或数值。
3. 动态控制界面组件属性:通过将属性对象转换为取值函数,并建立取值函数字典的方法,实现了动态控制界面组件属性的功能。这使得界面组件的属性值可以在运行时根据不同条件和数据动态变化,增强了应用的灵活性和交互性。
4. 提高用户体验:动态控制界面组件属性使得应用可以根据用户操作或数据变化实时调整界面展示。这种个性化和智能化的用户体验将提升用户对应用的满意度和忠诚度。
5. 减少代码冗余:通过采用属性对象的形式描述界面组件属性,避免了在代码中重复定义和配置属性值,减少了代码冗余,使代码更加简洁和易于维护。
6. 提高开发效率:可视化描述和动态控制界面组件属性,使得开发人员可以更快速地构建复杂的界面,并快速响应变化的需求。这有助于加快应用开发速度,降低开发成本。
7. 灵活适应不同场景:通过属性对象和组合属性编辑器的灵活设计,该方法及装置适用于不同类型的界面组件和应用场景。开发人员可以根据具体需求配置属性对象和属性值类型,适应各种复杂界面构建需求。
8. 增强代码可读性:采用属性对象的方式描述界面组件属性,使得代码结构更加清晰和易于理解。开发人员可以快速查找和修改界面组件属性,提高代码的可读性和维护性。
9. 高度可扩展:通过支持不同类型的属性值和动态控制机制,该方法及装置具有高度的可扩展性。开发人员可以根据需要添加新的属性值类型或控制逻辑,以满足不断演进的应用需求。
10. 促进团队协作:该方法及装置的可视化和灵活特性有助于不同角色的团队成员之间更好地协同工作。前端开发人员、界面设计人员和数据管理人员可以更直观地理解和配置界面组件属性,提高协作效率和项目质量。
总体而言,该可视化描述以及动态控制界面组件属性的方法及装置在简化开发流程、提高开发效率、增强用户体验、优化代码结构等方面具有明显的有益效果,为界面构建和应用开发领域带来了实质性的改进和创新。
本申请的这些方面或其他方面在以下实施例的描述中会更加简明易懂。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
在图中:
图1为本发明实施例的可视化描述以及动态控制界面组件属性的方法的流程图;
图2为本发明实施例的可视化描述以及动态控制界面组件属性的方法中组件对象的结构示意图。
具体实施方式
下面,结合附图以及具体实施方式,对本申请做进一步描述,需要说明的是,在不相冲突的前提下,以下描述的各实施例之间或各技术特征之间可以任意组合形成新的实施例。
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称的非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、装置、产品或设备固有的其他步骤或单元。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
本发明涉及一种可视化描述以及动态控制界面组件属性的方法及装置。该方法包括三个主要步骤:一、以属性对象形式描述界面组件属性;二、使用组合属性编辑器编辑界面组件属性值;三、将属性对象应用于前端组件。
在第一步,通过属性对象形式描述界面组件属性,采用文档形式描述所有可视化元素,并在界面组件对象中使用属性对象描述前端组件的属性。属性对象包括属性名为键、属性值对象为值的键值对,属性值对象结构包括值类型和值表达式。
第二步,使用组合属性编辑器编辑界面组件属性值,该编辑器包括属性值类型下拉选择框和属性值编辑器。属性值类型下拉选择框提供常量、变量、表达式、状态机、自定义函数五种属性值类型选项。属性值编辑器根据属性值类型展现不同形式的编辑器,例如,常量类型属性值展示适合该属性实际类型的默认编辑器,变量、表达式、状态机类型属性值采用参照选择文本框,自定义函数类型属性值使用文本框供开发者编写JavaScript表达式。
第三步,将属性对象应用于前端组件。首先,将属性对象转换为取值函数,根据属性值类型不同,实现相应的取值逻辑,包括获取常量值、变量值、表达式结果、状态机状态或执行自定义函数。然后,建立取值函数字典,以UI组件标识和属性名为键,取值函数为值。最后,通过数据绑定将取值函数绑定至UI组件具体属性,并监听所引用的变量、状态机的变化,以实现动态控制界面组件属性的功能。
本发明的方法及装置提供了一种灵活、可视化的界面组件属性描述和动态控制方案,可极大提高低代码页面设计器的开发效率和用户体验。
为让开发者在设计时直观理解界面元素状态,同时降低软件应用规则的复杂度,本方法提出了一种整合表示各类规则属性值的方式,将多条规则合并为一处,从而降低开发者认知负担,提升软件质量。
参见图1和图2所示,本发明实现了一种可视化描述以及动态控制界面组件属性的方法,包括以下步骤和内容。
具体的,步骤一,以属性对象形式描述界面组件属性。在低代码页面设计器中,采用文档形式描述所有可视化元素,对于每一个可视化前端组件,在文档中都有对应的界面组件文档对象。本发明才用属性对象的形式,在界面组件对象中描述前端组件的属性。属性对象的结构为以字符串类型的属性名为键,以属性值对象为值的键值对。
表1 以属性值对象为值的键值对
其中,属性值对象的结构包括:
值类型:即常量、变量、表达式、状态机、自定义函数,五种类型。
值表达式:以字符串形式保存指定类型的属性值。
表2 属性值对象的结构
具体的,步骤二,使用组合属性编辑器编辑界面组件属性值。组合属性编辑器包括:属性值类型下拉选择框、属性值编辑器两部分。
其中,属性值类型下拉选择框,可通过下拉形式选择常量、变量、表达式、状态机、自定义函数五种属性值类型。
其中,属性值编辑器,根据当属性值类型不同,展现不同形式的属性值编辑器。
当属性值类型为常量时,属性编辑器按界面组件属性实际类型展示默认编辑器。当属性值为布尔类型时,属性值编辑器下拉展示「是」「否」;当属性值为枚举值时,属性值编辑器下拉展示可选枚举值;当属性值为数值时,属性值编辑器采用数字输入框;当属性值为文本值时,属性编辑器采用文本输入框。
当属性值类型为变量时,属性编辑器为参照选择文本框。点击选择按钮,弹出选择应用变量界面。
当属性值类型为表达式时,属性编辑器为参照选择文本框。点击选择按钮,弹出可视化页面表达式编辑器界面。
当属性值类型为状态机时,属性编辑器为参照选择文本框。点击选择按钮,弹出选择界面状态机状态界面。
当属性值为自定义函数时,属性编辑器为文本框。开发者可以直接在文本框内编写JavaScript表达式。
具体的,步骤三,将属性对象应用与前端组件。包括以下步骤:
步骤3.1,将属性对象转换为取值函数。其中,对于常量类型属性值,直接返回常量值。其中,对于变量类型属性值,调用系统获取变量值的API,直接返回变量值。其中,对于表达式类型的属性值,向表达式解析引擎出入解析表达式必须的上下文参数,返回表达式引擎解析表达式的结果。其中,对于状态机类型的属性值,调用系统状态机获取状态值的API,返回状态机当前界面状态。其中,对于自定义函数类型的属性值,将JavaScript表达式做为函数内容,取值函数返回表达式执行结果。
步骤3.2,建立取值函数字典。声明取值函数字典对象,已UI组件标识和属性名为键,取值函数为值。
步骤3.3,绑定UI组件属性。采用数据绑定将取值函数绑定至UI组件具体属性,监听取值函数中引用的变量、状态机变化,值变化后,重新计算字典中的函数值,更新绑定的UI组件属性。
在低代码页面设计器中,以JSON格式文档描述前端组件,为每一个前端组件创建JSON格式的组件对象,以选择人员组件为例,其组件对象结构为:
{
"id": "employee_Employee_Name_065687c8_7lwk",
"type": "LookupEdit",
"titleSourceType": "static",
"title": "报销人",
"appearance": {
"class": "col-12 col-md-6 col-xl-3 col-el-3"
},
"size": null,
"readonly": {
"type": "StateMachine",
"value": "editable"
},
"require": {
"type": "Const",
"value": "false"
},
"disable": {
"type": "Express",
"value": "{DATA:~Status} === Approved"
},
"visible": {
"type": "Variable",
"value": "isCodeVisible"
}
}
其中,只读属性readonly的值绑定状态机的是否可编辑状态(editable),必填属性require绑定常量值否(false),禁用属性绑定表达式,当状态字段为已批准时,当前字段不可用({DATA:~Status} === Approved),是否可见属性绑定应用变量员工编号是否可见(isCodeVisible)。
d)Drawings ( more drawings is better. At your convenience, pls supplyCAD or visio drawings)
综上所述,本发明提供了一种可视化描述以及动态控制界面组件属性的方法。该方法首先采用属性对象形式描述界面组件属性,通过文档形式描述所有可视化元素,并在界面组件对象中使用属性对象描述前端组件的属性。属性对象由属性名为键、属性值对象为值的键值对组成,属性值对象结构包括值类型和值表达式。
其次,使用组合属性编辑器编辑界面组件属性值。组合属性编辑器包括属性值类型下拉选择框和属性值编辑器。属性值类型下拉选择框允许开发人员通过下拉选择常量、变量、表达式、状态机、自定义函数五种属性值类型。属性值编辑器根据属性值类型的不同展现不同形式的编辑器,如布尔类型时展示下拉选择框「是」「否」,枚举值时展示可选枚举值下拉选择框,数值时采用数字输入框,文本值时采用文本输入框等。
最后,将属性对象应用于前端组件,实现动态控制界面组件属性的功能。首先,将属性对象转换为取值函数,根据属性值类型不同,实现获取常量值、变量值、表达式结果、状态机状态或执行自定义函数的取值逻辑。然后,建立取值函数字典,以UI组件标识和属性名为键,取值函数为值。通过数据绑定将取值函数绑定至UI组件具体属性,并监听所引用的变量、状态机的变化,实现动态控制界面组件属性的功能。
在一些实施例中,本发明还提供了一种用于动态控制界面组件属性的方法,包括以下步骤:
将属性对象转换为取值函数,根据属性值类型不同,实现获取常量值、变量值、表达式结果、状态机状态或执行自定义函数的取值逻辑。
建立取值函数字典,以UI组件标识和属性名为键,取值函数为值。
通过数据绑定将取值函数绑定至UI组件具体属性,并监听所引用的变量、状态机的变化,实现动态控制界面组件属性的功能。
在本实施例中,取值函数字典用于存储各UI组件标识及属性名对应的取值函数,以实现属性值的动态更新和界面组件的动态展示。
需要注意的是,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
应该理解的是,上述虽然是按照某一顺序描述的,但是这些步骤并不是必然按照上述顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,本实施例的一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
本发明实施例的第三个方面,还提供了一种可视化描述以及动态控制界面组件属性的装置,包括以下模块:
1. 低代码页面设计器:
该模块是装置的核心组成部分,用于提供一个可视化的界面,让开发人员以文档形式描述所有可视化元素。开发人员可以在设计器中直观地构建界面,并为每个前端组件配置属性。在这个过程中,低代码页面设计器采用属性对象的形式,在界面组件对象中描述前端组件的属性。这样,界面组件属性的描述变得简单明了,开发人员无需手动编写大量的代码,而是通过直观的界面操作来完成属性配置。
2. 界面组件文档对象:
该模块用于存储低代码页面设计器中以文档形式描述的可视化元素信息。在设计过程中,每个界面组件都将被表示为一个属性对象,该属性对象由属性名为键、属性值对象为值的键值对组成。属性值对象的结构包括值类型和值表达式,允许开发人员对属性值进行灵活配置。
3. 属性对象存储与解析:
在界面组件文档对象中,装置会存储所有属性对象的信息。这些属性对象描述了每个界面组件的属性和属性值类型。装置还会提供相应的解析逻辑,以便在运行时将属性对象转换为实际的取值函数,并建立取值函数字典。
4. 组合属性编辑器:
该模块用于提供可视化的属性值编辑器,使开发人员能够直观地编辑界面组件的属性值。组合属性编辑器包括属性值类型下拉选择框和相应的属性值编辑器。属性值类型下拉选择框允许开发人员从常量、变量、表达式、状态机、自定义函数五种属性值类型中选择。根据选择的属性值类型,装置会展示相应类型的编辑器,以便开发人员输入或选择属性值。
5. 动态控制逻辑:
通过属性对象的存储和解析,装置能够将属性对象转换为对应的取值函数,并建立取值函数字典。在运行时,装置会监测所引用的变量、状态机等的变化,并根据动态控制逻辑重新计算取值函数的结果。这样,界面组件的属性值可以根据不同条件和数据动态变化,实现了动态控制界面组件属性的功能。
综上所述,该装置是一种集成了可视化描述和动态控制界面组件属性的工具,通过低代码页面设计器和组合属性编辑器,使得界面构建和属性配置更加直观和高效。同时,通过属性对象的存储与解析以及动态控制逻辑,实现了界面组件属性值的动态变化,为用户提供了个性化和智能化的用户体验。该装置在低代码开发领域具有重要的应用价值和推广前景。
通过上述具体实施方式,本发明的可视化描述以及动态控制界面组件属性的方法及装置可以实现复杂审批流程中的父子流程拆分,并在子流程中处理不同种类的审批业务。通过自动生成下游单据并选择相应的生单流程,简化了审批流程的配置和管理,减少了冗余字段和配置,提高了审批效率和数据关联性,同时具有较强的可扩展性和灵活性。这一方法及装置在企业、组织和机构的审批流程管理中具有重要的应用价值。
本发明的实现方法及装置带来了多项有益效果:首先,它能够简化审批流程,使得整个流程更加灵活、高效;其次,通过自动生成下游单据,减少了冗余字段和配置,提高了数据关联性;同时,本发明的方法和装置具有较强的可扩展性,适用于多样化的业务场景;最重要的是,本发明可以降低开发成本,并提高用户体验。
本发明实施例的第三个方面,还提供了一种计算机设备,包括存储器和处理器,该存储器中存储有计算机程序,该计算机程序被该处理器执行时实现上述任意一项实施例的方法。
在该计算机设备中包括一个处理器以及一个存储器,并还可以包括:输入装置和输出装置。处理器、存储器、输入装置和输出装置可以通过总线或者其他方式连接,输入装置可接收输入的数字或字符信息,以及产生与可视化描述以及动态控制界面组件属性的的迁移有关的信号输入。输出装置可包括显示屏等显示设备。
存储器作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的可视化描述以及动态控制界面组件属性的方法对应的程序指令/模块。存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作装置、至少一个功能所需要的应用程序;存储数据区可存储可视化描述以及动态控制界面组件属性的方法的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至本地模块。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器通常用于控制计算机设备的总体操作。本实施例中,处理器用于运行存储器中存储的程序代码或者处理数据。本实施例计算机设备的多个计算机设备的处理器通过运行存储在存储器中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例的可视化描述以及动态控制界面组件属性的方法的步骤。
应当理解,在相互不冲突的情况下,以上针对根据本发明的可视化描述以及动态控制界面组件属性的方法阐述的所有实施方式、特征和优势同样地适用于根据本发明的可视化描述以及动态控制界面组件属性的和存储介质。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个装置的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
最后需要说明的是,本文的计算机可读存储介质(例如,存储器)可以是易失性存储器或非易失性存储器,或者可以包括易失性存储器和非易失性存储器两者。作为例子而非限制性的,非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦写可编程ROM(EEPROM)或快闪存储器。易失性存储器可以包括随机存取存储器(RAM),该RAM可以充当外部高速缓存存储器。作为例子而非限制性的,RAM 可以以多种形式获得,比如同步RAM(DRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据速率SDRAM(DDRSDRAM)、增强SDRAM(ESDRAM)、同步链路DRAM(SLDRAM)、以及直接Rambus RAM(DRRAM)。所公开的方面的存储设备意在包括但不限于这些和其它合适类型的存储器。
结合这里的公开所描述的各种示例性逻辑块、模块和电路可以利用被设计成用于执行这里功能的下列部件来实现或执行:通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。通用处理器可以是微处理器,但是可替换地,处理器可以是任何传统处理器、控制器、微控制器或状态机。处理器也可以被实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器结合DSP和/或任何其它这种配置。
以上是本发明公开的示例性实施例,但是应当注意,在不背离本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
Claims (10)
1.一种可视化描述以及动态控制界面组件属性的方法,其特征在于,包括以下步骤:
a.使用属性对象形式描述所有可视化元素,并在界面组件对象中以属性对象描述前端组件的属性,其中属性对象由属性名为键、属性值对象为值的键值对组成;
b.所述属性值对象的结构包括值类型和值表达式,其中值类型包括常量、变量、表达式、状态机、自定义函数五种类型,值表达式以字符串形式保存指定类型的属性值。
2.根据权利要求1所述的可视化描述以及动态控制界面组件属性的方法,其特征在于,属性值类型为常量时,采用默认编辑器展示该属性的实际类型。
3.根据权利要求2所述的可视化描述以及动态控制界面组件属性的方法,其特征在于,属性值类型为变量时,使用参照选择文本框展示,并通过选择界面供开发者选择应用的变量。
4.根据权利要求2所述的可视化描述以及动态控制界面组件属性的方法,其特征在于,属性值类型为表达式时,使用参照选择文本框展示,并通过可视化页面表达式编辑器界面供开发者编辑和选择表达式。
5.根据权利要求2所述的可视化描述以及动态控制界面组件属性的方法,其特征在于,属性值类型为状态机时,使用参照选择文本框展示,并通过选择界面状态机状态界面供开发者选择当前界面状态。
6.根据权利要求2所述的可视化描述以及动态控制界面组件属性的方法,其特征在于,属性值类型为自定义函数时,使用文本框供开发者直接编写JavaScript表达式。
7.根据权利要求1所述的可视化描述以及动态控制界面组件属性的方法,其特征在于,包括以下步骤:
将属性对象转换为取值函数,根据属性值类型不同,实现获取常量值、变量值、表达式结果、状态机状态或执行自定义函数的取值逻辑;
建立取值函数字典,以UI组件标识和属性名为键,取值函数为值;
通过数据绑定将取值函数绑定至UI组件具体属性,并监听所引用的变量、状态机的变化,实现动态控制界面组件属性的功能。
8.根据权利要求7所述的可视化描述以及动态控制界面组件属性的方法,其特征在于,取值函数字典用于存储各UI组件标识及属性名对应的取值函数。
9.一种可视化描述以及动态控制界面组件属性的装置,其特征在于,包括:
低代码页面设计器,用于以文档形式描述所有可视化元素,并在界面组件对象中使用属性对象描述前端组件的属性;
界面组件文档对象,用于存储文档形式描述的可视化元素信息。
10.根据权利要求9所述的可视化描述以及动态控制界面组件属性的装置,其特征在于,所述界面组件文档对象用于存储属性对象,该属性对象由属性名为键、属性值对象为值的键值对组成,属性值对象结构包括值类型和值表达式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311488719.XA CN117215585B (zh) | 2023-11-09 | 2023-11-09 | 一种可视化描述以及动态控制界面组件属性的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311488719.XA CN117215585B (zh) | 2023-11-09 | 2023-11-09 | 一种可视化描述以及动态控制界面组件属性的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117215585A true CN117215585A (zh) | 2023-12-12 |
CN117215585B CN117215585B (zh) | 2024-03-08 |
Family
ID=89042964
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311488719.XA Active CN117215585B (zh) | 2023-11-09 | 2023-11-09 | 一种可视化描述以及动态控制界面组件属性的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117215585B (zh) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1387263A2 (en) * | 1995-12-15 | 2004-02-04 | Z-Force Corporation | Method and system for constructing software components and systems as assemblies of independent parts |
US20060150148A1 (en) * | 2004-12-16 | 2006-07-06 | Openspan, Inc. | System and method for non-programmatically constructing software solutions |
CN102541541A (zh) * | 2011-12-15 | 2012-07-04 | 大唐软件技术股份有限公司 | 界面生成方法和装置 |
CN104267962A (zh) * | 2014-10-09 | 2015-01-07 | 浪潮通用软件有限公司 | 一种基于描述的界面ui控件配置方法 |
CN106843844A (zh) * | 2016-12-26 | 2017-06-13 | 南威软件股份有限公司 | 一种自定义视图的展示装置 |
CN112099792A (zh) * | 2020-09-18 | 2020-12-18 | 上海逸动医学科技有限公司 | 一种可视化ui样式设计方法及系统 |
CN113641338A (zh) * | 2021-07-14 | 2021-11-12 | 广州市玄武无线科技股份有限公司 | 一种动态生成视图组件的方法及装置 |
CN114237583A (zh) * | 2021-12-20 | 2022-03-25 | 上海担路网络科技有限公司 | 一种跨平台可视化代码生成装置和方法 |
CN115686457A (zh) * | 2022-10-27 | 2023-02-03 | 中通服软件科技有限公司 | 一种基于属性联动规则的页面数据处理方法和介质 |
CN115858282A (zh) * | 2022-11-24 | 2023-03-28 | 天翼电子商务有限公司 | 一种前端性能可视化监控方法及系统 |
CN116243919A (zh) * | 2023-01-09 | 2023-06-09 | 浪潮通用软件有限公司 | 一种解释渲染和代码渲染的界面渲染方法、设备及介质 |
CN116257241A (zh) * | 2023-03-31 | 2023-06-13 | 浪潮通用软件有限公司 | 一种交互界面的设定方法、装置、设备及介质 |
CN116541005A (zh) * | 2023-06-06 | 2023-08-04 | 浪潮通用软件有限公司 | 一种前端界面配置的抽象描述方法、装置、设备及介质 |
-
2023
- 2023-11-09 CN CN202311488719.XA patent/CN117215585B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1387263A2 (en) * | 1995-12-15 | 2004-02-04 | Z-Force Corporation | Method and system for constructing software components and systems as assemblies of independent parts |
US20060150148A1 (en) * | 2004-12-16 | 2006-07-06 | Openspan, Inc. | System and method for non-programmatically constructing software solutions |
CN102541541A (zh) * | 2011-12-15 | 2012-07-04 | 大唐软件技术股份有限公司 | 界面生成方法和装置 |
CN104267962A (zh) * | 2014-10-09 | 2015-01-07 | 浪潮通用软件有限公司 | 一种基于描述的界面ui控件配置方法 |
CN106843844A (zh) * | 2016-12-26 | 2017-06-13 | 南威软件股份有限公司 | 一种自定义视图的展示装置 |
CN112099792A (zh) * | 2020-09-18 | 2020-12-18 | 上海逸动医学科技有限公司 | 一种可视化ui样式设计方法及系统 |
CN113641338A (zh) * | 2021-07-14 | 2021-11-12 | 广州市玄武无线科技股份有限公司 | 一种动态生成视图组件的方法及装置 |
CN114237583A (zh) * | 2021-12-20 | 2022-03-25 | 上海担路网络科技有限公司 | 一种跨平台可视化代码生成装置和方法 |
CN115686457A (zh) * | 2022-10-27 | 2023-02-03 | 中通服软件科技有限公司 | 一种基于属性联动规则的页面数据处理方法和介质 |
CN115858282A (zh) * | 2022-11-24 | 2023-03-28 | 天翼电子商务有限公司 | 一种前端性能可视化监控方法及系统 |
CN116243919A (zh) * | 2023-01-09 | 2023-06-09 | 浪潮通用软件有限公司 | 一种解释渲染和代码渲染的界面渲染方法、设备及介质 |
CN116257241A (zh) * | 2023-03-31 | 2023-06-13 | 浪潮通用软件有限公司 | 一种交互界面的设定方法、装置、设备及介质 |
CN116541005A (zh) * | 2023-06-06 | 2023-08-04 | 浪潮通用软件有限公司 | 一种前端界面配置的抽象描述方法、装置、设备及介质 |
Non-Patent Citations (3)
Title |
---|
TAKAYUKI SUYAMA: "Strategy/false-name proof protocols for combinatorial multi-attribute procurement auction: handling arbitrary utility of the buyer", AAMAS \'05: PROCEEDINGS OF THE FOURTH INTERNATIONAL JOINT CONFERENCE ON AUTONOMOUS AGENTS AND MULTIAGENT SYSTEMS * |
张建春;康凤举;: "想定驱动的组件化模型组合方法研究", 系统仿真学报, no. 08 * |
张新华, 朱跃龙, 王新光: "基于PowerBuilder的MIS系统中通用查询系统设计与实现", 微型电脑应用, no. 09 * |
Also Published As
Publication number | Publication date |
---|---|
CN117215585B (zh) | 2024-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Freeman | Pro Asp. net core MVC | |
CN110806863A (zh) | 接口文档生成方法及装置、电子设备、存储介质 | |
CN104020988B (zh) | 定制制造企业解决方案屏幕的图形用户界面 | |
CN105511873B (zh) | 用户界面控件展示方法及装置 | |
US10068172B2 (en) | Method and system for simplified knowledge engineering | |
WO2006107529A2 (en) | Method and system for aggregating rules for a property associated with a document element | |
US20180189033A1 (en) | Graphical software meta-development tool | |
US20150178263A1 (en) | System and Method for Constructing Markup Language Templates and Input Data Structure Specifications | |
Oak et al. | Dynamic Forms UI: Flexible and Portable Tool for easy UI Design | |
CN112685025A (zh) | 快速搭建前端页面的方法及系统 | |
CN117215585B (zh) | 一种可视化描述以及动态控制界面组件属性的方法及装置 | |
KR20180135654A (ko) | 프로그램의 직관적 제작방법 | |
JP7014960B2 (ja) | 情報処理装置、サーバ、その処理方法及びプログラム | |
de Lange et al. | Collaborative wireframing for model-driven web engineering | |
US11809844B2 (en) | Creating an app method and system | |
CN114706580A (zh) | 前端网页开发方法、装置、存储介质和电子设备 | |
CN114449063A (zh) | 一种报文处理方法、装置及设备 | |
CN112988139A (zh) | 事件处理文件的开发方法与装置 | |
CN113806596B (zh) | 运营数据管理方法及相关装置 | |
Casalánguida et al. | User interface design for responsive web applications | |
CN115238218A (zh) | 网页设计方法及网页设计装置 | |
JP2010250826A (ja) | ワークフローを設定するための装置および方法 | |
Antonio et al. | Inside the DOM Abstraction | |
Bamfo | An implementation of a web platform to support free recycling in Ghana | |
CN114238072A (zh) | Hil需求设计方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |