组件处理方法、装置及服务器与流程

文档序号:29574840发布日期:2022-04-09 05:43阅读:74来源:国知局
1.本技术涉及计算机软件
技术领域
:,尤其涉及一种组件处理方法、装置及服务器。
背景技术
::2.现有技术通过软件即服务(softwareasaservice,saas)技术发布组件,组件发布后,组件的功能界面及其包含的组件等都是固定的,如果出现页面级业务需要变更时,页面需要再次经历需求、设计、编码、测试、发布、及验证等迭代过程。用户在使用相关组件时,往往需要根据自己的需要再做一些调整,组件调整好之后能够及时进行线上验证。3.若前端采用传统jquery框架开发,在开发过程中需要用到视图(view)组件,view组件是最常用的、最简单的视图容器,主要用于布局展示,是布局中最基本的用户界面(userinterface,ui)组件,比较复杂的布局可以通过嵌套view组件来实现。view组件可以通过异步javascript和xml(asynchronousjavascriptandxmlandhtml,ajax)技术结合jquery技术动态操作文档对象模型(documentobjectmodel,dom)。此种方式下,首先需要进行产品设计,然后前端改页面、后端改业务接口、测试验证,最终运维部署上线,客户验收,迭代周期长且反馈比较慢。4.若前端采用react框架开发,由于react是一个用于构建用户界面的javascript库,具备创建交互式ui,react实现了数据(data)与视图(view)的双向绑定,当数据变动时,react框架能高效更新并渲染合适的组件;react框架构建管理自身状态的封装组件,然后对封装组件进行组合以构成复杂的ui。5.数据(data)与视图(view)的双向绑定框架由数据层(model)、视图层(view)、及业务逻辑层(viewmodel)三部分组成,数据层(model)是指应用的数据及业务逻辑,是开发者写的业务代码;视图层(view)是指应用的页面展示效果,由页面模板和样式组成;业务逻辑层(viewmodel)是框架封装的核心,主要功能是将数据与视图关联起来。6.数据与视图的双向绑定框架又可以称为数据层、视图层及业务逻辑层(modelviewviewmodel,mvvm)框架,关键点就在于业务逻辑层(viewmodel)。业务逻辑层的主要职责就是在数据变化之后更新视图,在视图变化之后更新数据。7.数据双向绑定原理为:通过代码程序定义数据层(model)和视图(view)的关系,剩下的业务处理只需要监测数据变化,视图(view)的变化由框架自动执行,无需像jquery框架手动操作dom。此种方式下,首先前端需要改变ui元素生成逻辑代码,其次,接口联调后部署测试、上线、验收等,需要消耗较多时间。8.若选用组件即服务(applicationplatformasaservice,apaas)平台环境开发,可采用mendix这种高效的apaas环境开发,mendix开发模式为模型驱动开发(model-drivendevelopment,mdd),可为模型定义各种各样的事件委托(eventhandler)。此种方式下,要在设计态进行组件配置修改,切换到运行态也需要部署过程,需要消耗比较多的时间,人力成本较高。9.综上可知,现有技术在对已发布的组件进行调整时存在操作步骤复杂,耗时比较长的问题。技术实现要素:10.为了解决上述技术问题,本技术实施例提供了一种组件处理方法、装置及服务器。11.第一方面,本技术实施例提供了一种组件处理方法,应用于服务器,所述方法包括:12.获取组件代码,根据用户图表场景确定数据模型,将所述组件代码及所述数据模型打包,得到封装组件,发布所述封装组件;13.获取组件配置调整信息,根据所述组件配置调整信息对所述数据模型进行调整,生成修正数据模型;14.控制所述封装组件根据所述修正数据模型生成对应的用户界面元素,并渲染所述用户界面元素,以供所述封装组件根据所述用户界面元素调整自身的运行状态。15.第二方面,本技术实施例提供了一种组件处理装置,应用于服务器,所述方法包括:16.第一获取模块,用于获取组件代码,根据用户图表场景确定数据模型,将所述组件代码及所述数据模型打包,得到封装组件,发布所述封装组件;17.第二获取模块,用于获取组件配置调整信息,根据所述组件配置调整信息对所述数据模型进行调整,生成修正数据模型;18.控制模块,用于控制所述封装组件根据所述修正数据模型生成对应的用户界面元素,并渲染所述用户界面元素,以供所述封装组件根据所述用户界面元素调整自身的运行状态。19.第三方面,本技术实施例提供了一种服务器,包括存储器以及处理器,所述存储器用于存储计算机程序,所述计算机程序在所述处理器运行时执行第一方面提供的组件处理方法。20.第四方面,本技术实施例提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序在处理器上运行时执行第一方面提供的组件处理方法。21.上述本技术提供的组件处理方法、装置及服务器,获取组件代码,根据用户图表场景确定数据模型,将所述组件代码及所述数据模型打包,得到封装组件,发布所述封装组件;获取组件配置调整信息,根据所述组件配置调整信息对所述数据模型进行调整,生成修正数据模型;控制所述封装组件根据所述修正数据模型生成对应的用户界面元素,并渲染所述用户界面元素,以供所述封装组件根据所述用户界面元素调整自身的运行状态。这样,采用组件配置调整信息对数据模型进行调整得到修正数据模型,由修正数据模型生成用户界面元素,实现动态适配数据模型生成对应的用户界面元素,便于在封装组件根据用户界面元素动态调整自身的运行状态,简化组件调整的操作步骤,减少组件调整的耗时,提高组件调整的效率。附图说明22.为了更清楚地说明本技术的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对本技术保护范围的限定。在各个附图中,类似的构成部分采用类似的编号。23.图1示出了本技术实施例提供的组件处理方法的一流程示意图;24.图2示出了本技术实施例提供的组件处理装置的一结构示意图;25.图3示出了本技术实施例提供的服务器的一结构示意图。具体实施方式26.下面将结合本技术实施例中附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。27.通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。28.在下文中,可在本技术的各种实施例中使用的术语“包括”、“具有”及其同源词仅意在表示特定特征、数字、步骤、操作、元件、组件或前述项的组合,并且不应被理解为首先排除一个或更多个其它特征、数字、步骤、操作、元件、组件或前述项的组合的存在或增加一个或更多个特征、数字、步骤、操作、元件、组件或前述项的组合的可能性。29.此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。30.除非另有限定,否则在这里使用的所有术语(包括技术术语和科学术语)具有与本技术的各种实施例所属领域普通技术人员通常理解的含义相同的含义。所述术语(诸如在一般使用的词典中限定的术语)将被解释为具有与在相关
技术领域
:中的语境含义相同的含义并且将不被解释为具有理想化的含义或过于正式的含义,除非在本技术的各种实施例中被清楚地限定。31.实施例132.本公开实施例提供了一种组件处理方法,本实施例的组件处理方法可以应用于服务器。33.具体的,参见图1,本实施例组件处理方法包括:34.步骤s101,获取组件代码,根据用户图表场景确定数据模型,将所述组件代码及所述数据模型打包,得到封装组件,发布所述封装组件。35.在本实施例中,可以通过插件式组件生成react组件工程或者mendix组件工程,通过在react组件工程或者mendix组件工程自定义组件代码。用户图表场景是指特定行业统计、展示等场景,例如,用户图表场景可以包括工业商业智能(businessintelligence,bi)图表场景、工业bi系统表格场景、智能查询表单场景等。在不同场景有不同的调整需求,例如,在重机管理系统中的设备历史通讯报文页面需要动态添加一列显示发送时间、同时隐藏设备的序列号;或者在查询表单里面动态添加查询参数开始时间范围参数(starttime),实际应用中还有其他的调整需求,在此不做限制。36.本实施例中的数据模型对各个场景的数据进行抽象形成一定的数据格式,包括数据结构、数据操作及数据约束等内容。可以对不同用户图表场景确定对应的数据模型及组件代码,将同一用户图表场景的数据模型及组件代码进行打包,得到各用户图表场景对应的封装组件。37.举例来说,封装组件可以为工业bi图表场景下的图表组件(echartbase),工业bi系统表格组件(tablepro),及智能查询表单组件等。38.需要说明的是,本实施例中的封装组件在低代码平台发布使用,低代码平台可以是mendix平台、react平台等。39.步骤s102,获取组件配置调整信息,根据所述组件配置调整信息对所述数据模型进行调整,生成修正数据模型。40.在本实施例中,所述封装组件可以为以下任一种:动态图表组件、动态列表组件及动态表单组件;所述封装组件为所述动态图表组件时,所述组件配置调整信息包括图样配置信息;所述封装组件为所述动态列表组件时,所述组件配置调整信息包括表单字段配置信息;所述封装组件为所述动态表单组件时,所述组件配置调整信息包括表单功能配置信息。41.举例来说,图样配置信息可以包括饼状图样、柱状图样、线状图样之间的更换等,表单字段配置信息可以包括性别、年龄等各类属性字段的添加或删除;表单功能配置信息可以包括表单查询功能、表单筛选功能等配置信息。42.在本实施例中,可以通过mendix微流调用(callrest)后端接口读取组件配置调整信息,对组件配置调整信息进行解析,得到解析结果,根据解析结果对数据模型进行调整。43.在本实施例中,封装组件根据服务器对组件配置的数据模型进行相应调整,动态地获取修正数据模型修正数据模型。44.举例来说,对于动态图表组件来说,某重机中台管理系统的项目管理首页上显示的项目整体情况的饼状图,若用户一方面需要把饼状图切换成柱状图、另一方面需要变换一下组件主题色,用户可以控制对应的组件配置调整信息,用户设置的组件配置调整信息包括饼状图切换成柱状图配置信息、及调整组件主题色配置信息,根据饼状图切换成柱状图配置信息、及调整组件主题色配置信息对动态图表组件的数据模型进行修改,动态改变动态图表组件的数据模型的相应配置,得到动态图表组件的修正数据模型。45.对于动态列表组件来说,可以用于显示系统中各类列表,例如可以显示用户列表,动态列表组件获取用户(user)对象列表,当用户通过组件管理平台为user对象添加了一个属性字段,例如性别字段时,根据性别字段调整动态列表组件的数据模型,得到动态列表组件的修正数据模型。46.对于动态表单组件来说,可以用于查询用户信息输入表单,当查询模型配置了一个新的查询字段,例如新的查询字段为“注册时间”时,显示属性值为真(true)时,动态表单组件的适配逻辑会识别新增字段“注册时间”,根据新增字段“注册时间”调整动态表单组件的数据模型,得到动态表单组件的修正数据模型。47.在本实施例中,动态图表组件、动态列表组件及动态表单组件可以为echartbase组件,echartbase组件依托echart框架能力,服务器管理echart框架的配置及数据(options),可以实现图标形态的配置转变。echartbase组件部分代码如下:48.interface,ui)元素,并向运行态组件发送输入ui元素,运行态组件根据输入ui元素调整动态表单组件的运行状态,显示输入ui元素。52.这样,封装组件在运行态时,服务器调整组件配置,控制运行的组件实现相应的状态变化,组件运行状态的即时变化反馈到用户显示设备上,对应用交付意义重大。53.可选的,步骤s101中根据用户图表场景确定数据模型之后,所述方法还包括:54.根据所述数据模型的逻辑边界确定所述数据模型的配置的变化范围,向所述封装组件发送所述变化范围。55.需要说明的是,数据模型的数据约束中包括逻辑边界,根据数据模型的逻辑边界可以确定数据模型的配置的变化范围。数据模型的配置可以包括不同用户图表场景需要用到的配置,例如,动态图表组件的配置包括图表样式、主题色等,相应的,动态图表组件的配置的变化范围可以为图表样式从饼状变换为柱状、从柱状变换为饼状,各类型可供选择的主题色等。56.可选的,所述封装组件包括展示组件,步骤s102中根据所述组件配置调整信息对所述数据模型进行调整,生成修正数据模型,包括:57.控制所述展示组件根据所述组件配置调整信息对所述数据模型进行对应的逻辑处理,触发所述数据模型的预定义功能函数,得到所述修正数据模型。58.在本实施例中,预定义功能函数(handler)为各类功能函数,例如可以存储函数、删除函数、新增函数等。59.可选的,所述封装组件还包括容器组件,步骤s103中的控制所述封装组件根据所述修正数据模型生成对应的用户界面元素,包括:60.控制所述容器组件获取业务数据,将所述业务数据进行格式转换,得到标准数据,向所述展示组件输入所述标准数据;61.控制所述展示组件将所述标准数据输入所述修正数据模型生成所述用户界面元素。62.在本实施例中,将所述业务数据进行格式转换的具体过程可以包括:对业务数据进行解析,将解析后的业务数据的格式转换为满足修正数据模型要求的数据格式。63.在本实施例中,加载数据模型时机为在页面加载完成后同步加载组件的模型数据,当数据模型变为修正数据模型时需要触发组件重新读取修正数据模型。64.本实施例提供的封装组件与现有视图(view)组件相比,本实施例提供的封装组件具有动态适配数据模型、业务自洽地进行用户界面元素调整的特点。此外,本实施例中组件配置集中在服务器进行管理,服务器动态调整组件的配置,使得组件可以实时、灵活地调整组件的运行状态。并且,本实施例选择mendix平台框架或者react平台框架,具有强大的组件化能力,不仅可以规范组件实现技术栈,有助于应用组件化落地,使得快速迭代成为现实,同时基于mendix平台框架或者react平台框架获得的组件经过少量修改就可以适应其他低代码平台。65.本实施例提供的组件处理方法,获取组件代码,根据用户图表场景确定数据模型,将所述组件代码及所述数据模型打包,得到封装组件,发布所述封装组件;获取组件配置调整信息,根据所述组件配置调整信息对所述数据模型进行调整,生成修正数据模型;控制所述封装组件根据所述修正数据模型生成对应的用户界面元素,并渲染所述用户界面元素,以供所述封装组件根据所述用户界面元素调整自身的运行状态。这样,采用组件配置调整信息对数据模型进行调整得到修正数据模型,由修正数据模型生成用户界面元素,实现动态适配数据模型生成对应的用户界面元素,便于在封装组件根据用户界面元素动态调整自身的运行状态,简化组件调整的操作步骤,减少组件调整的耗时,提高组件调整的效率。66.实施例267.此外,本公开实施例还提供了一种组件处理装置,该装置应用于服务器。68.具体的,参见图2,本实施例提供的组件处理装置200包括:69.第一获取模块201,用于获取组件代码,根据用户图表场景确定数据模型,将所述组件代码及所述数据模型打包,得到封装组件,发布所述封装组件;70.第二获取模块202,用于获取组件配置调整信息,根据所述组件配置调整信息对所述数据模型进行调整,生成修正数据模型;71.控制模块203,用于控制所述封装组件根据所述修正数据模型生成对应的用户界面元素,并渲染所述用户界面元素,以供所述封装组件根据所述用户界面元素调整自身的运行状态。72.在本实施例中,组件处理装置200还包括:73.确定模块,用于根据所述数据模型的逻辑边界确定所述数据模型的配置的变化范围。74.在本实施例中,所述封装组件包括展示组件,所述第二获取模块202,还用于控制所述展示组件根据所述组件配置调整信息对所述数据模型进行对应的逻辑处理,触发所述数据模型的预定义功能函数,得到所述修正数据模型。75.在本实施例中,所述封装组件还包括容器组件,所述控制模块203,还用于控制所述容器组件获取业务数据,将所述业务数据进行格式转换,得到标准数据,向所述展示组件输入所述标准数据;76.控制所述展示组件将所述标准数据输入所述修正数据模型生成所述用户界面元素。77.本发明实施例提供的组件处理装置200,可以执行上实施例1中的组件处理方法的步骤,不再赘述。78.本实施例提供的组件处理装置,获取组件代码,根据用户图表场景确定数据模型,将所述组件代码及所述数据模型打包,得到封装组件,发布所述封装组件;获取组件配置调整信息,根据所述组件配置调整信息对所述数据模型进行调整,生成修正数据模型;控制所述封装组件根据所述修正数据模型生成对应的用户界面元素,并渲染所述用户界面元素,以供所述封装组件根据所述用户界面元素调整自身的运行状态。这样,采用组件配置调整信息对数据模型进行调整得到修正数据模型,由修正数据模型生成用户界面元素,实现动态适配数据模型生成对应的用户界面元素,便于在封装组件根据用户界面元素动态调整自身的运行状态,简化组件调整的操作步骤,减少组件调整的耗时,提高组件调整的效率。79.实施例380.此外,本公开实施例提供了一种服务器,所述服务器包括存储器以及处理器,所述存储器存储有计算机程序,所述计算机程序在所述处理器上运行时执行上述方法实施例1所提供的组件处理方法。81.所述服务器300包括:收发机301、总线接口及处理器302,所述处理器302,用于:获取组件代码,根据用户图表场景确定数据模型,将所述组件代码及所述数据模型打包,得到封装组件,发布所述封装组件;82.获取组件配置调整信息,根据所述组件配置调整信息对所述数据模型进行调整,生成修正数据模型;83.控制所述封装组件根据所述修正数据模型生成对应的用户界面元素,并渲染所述用户界面元素,以供所述封装组件根据所述用户界面元素调整自身的运行状态。84.可选的,所述处理器302还用于:根据所述数据模型的逻辑边界确定所述数据模型的配置的变化范围,向所述封装组件发送所述变化范围。85.可选的,所述处理器302还用于:控制所述展示组件根据所述组件配置调整信息对所述数据模型进行对应的逻辑处理,触发所述数据模型的预定义功能函数,得到所述修正数据模型。86.可选的,所述处理器302还用于:控制所述容器组件获取业务数据,将所述业务数据进行格式转换,得到标准数据,向所述展示组件输入所述标准数据;87.控制所述展示组件将所述标准数据输入所述修正数据模型生成所述用户界面元素。88.在本发明实施例中,服务器300还包括:存储器303。在图3中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器302代表的一个或多个处理器和存储器303代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机301可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。处理器302负责管理总线架构和通常的处理,存储器303可以存储处理器302在执行操作时所使用的数据。89.本发明实施例提供的服务器300,可以执行上实施例1中的组件处理方法的步骤,不再赘述。90.实施例491.本技术还提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现实施例1所提供的组件处理方法。92.在本实施例中,计算机可读存储介质可以为只读存储器(read-onlymemory,简称rom)、随机存取存储器(randomaccessmemory,简称ram)、磁碟或者光盘等。93.本实施例提计算机可读存储介质可以实施例1、实施例2、及实施例3所提供的组件处理方法,为避免重复,在此不再赘述。94.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者终端中还存在另外的相同要素。95.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本技术各个实施例所述的方法。96.上面结合附图对本技术的实施例进行了描述,但是本技术并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本技术的启示下,在不脱离本技术宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本技术的保护之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1