CN111399806A - 一种组件管理方法、装置、电子设备及存储介质 - Google Patents

一种组件管理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN111399806A
CN111399806A CN201910004541.4A CN201910004541A CN111399806A CN 111399806 A CN111399806 A CN 111399806A CN 201910004541 A CN201910004541 A CN 201910004541A CN 111399806 A CN111399806 A CN 111399806A
Authority
CN
China
Prior art keywords
component
data
current component
configuration information
information corresponding
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
Application number
CN201910004541.4A
Other languages
English (en)
Other versions
CN111399806B (zh
Inventor
董天成
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201910004541.4A priority Critical patent/CN111399806B/zh
Publication of CN111399806A publication Critical patent/CN111399806A/zh
Application granted granted Critical
Publication of CN111399806B publication Critical patent/CN111399806B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/24Object-oriented

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开了一种组件管理方法、装置、电子设备及存储介质。所述方法包括:获取当前组件对应的配置信息;根据所述当前组件对应的配置信息对数据仓库中所述当前组件所依赖的数据进行管理。不仅可以减少组件管理成本,还可以提高组件管理效率。

Description

一种组件管理方法、装置、电子设备及存储介质
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种组件管理方法、装置、电子设备及存储介质。
背景技术
现在的前端工程师在开发平台系统页面的时候,一般都是使用流行的前端框架,例如:React.js,Vue.js,然后通过编写调用框架API、调用接口以及开发一些特定的业务逻辑代码来完成系统中每个页面的开发。在现有的网页开发过程中,前端工程师不仅要用代码来实现特殊的业务逻辑,还需要基于当前所应用的框架,通过编写代码实现对组件状态的管理,编写每个组件生命周期内的一些实现,完成页面组件在用户交互的时候对状态的操作。如果组件需要调用接口,前端工程师还需要在组件的一些生命周期函数内,调用Ajax来发送请求获取数据,并手动实现逻辑将接口返回的数据合并到页面的状态中。因此前端工程师在页面的开发过程中,需要花费很多时间来维护整个应用的状态。
此外,复杂的业务系统会依赖非常多的数据接口。每一个数据接口都依赖状态中的某一些字段。在现有的网页开发过程中,前端工程师都需要手动编写代码,来监听某一些字段的更新,以完成重新请求数据的操作。因此,需要通过一定的方式来尽可能地克服这一问题,但是在现有技术中还没有一种有效的解决方式。
发明内容
有鉴于此,本发明实施例提供一种组件管理方法、装置、电子设备及存储介质,不仅可以减少组件管理成本,还可以提高组件管理效率。
第一方面,本发明实施例提供了一种组件管理方法,所述方法包括:
获取当前组件对应的配置信息;
根据所述当前组件对应的配置信息对数据仓库中所述当前组件所依赖的数据进行管理。
在上述实施例中,所述根据所述当前组件对应的配置信息对数据仓库中所述当前组件所依赖的数据进行管理,包括:
若所述当前组件对应的配置信息中被嵌入基于Javascript语法的运行沙箱,则通过所述基于Javascript语法的运行沙箱计算所述当前组件对应的目标值;
在所述数据仓库中将所述当前组件对应的目标值传递给所述当前组件。
在上述实施例中,所述根据所述当前组件对应的配置信息对数据仓库中所述当前组件所依赖的数据进行管理,包括:
若所述当前组件对应的配置信息中存在名称name属性的组件配置,则根据所述name属性的组件配置在所述数据仓库中创建所述当前组件所依赖的数据。
在上述实施例中,所述方法还包括:
若所述当前组件对应的关联组件产生新的数据,则根据所述name属性的组件配置将所述新的数据写入到所述数据仓库中;
若预先定义的点击操作或者键盘操作被用户触发,则在所述当前组件对应的配置信息中添加与其对应的事件绑定。
在上述实施例中,所述将所述新的数据写入到所述数据仓库中,包括:
通过所述容器组件的响应式接口向所述数据仓库发送超文本传输协议HTTP请求;
通过所述容器组件的响应式接口接收所述数据仓库返回的HTTP响应;
根据所述数据仓库返回的HTTP响应将所述新的数据写入到所述数据仓库中。
在上述实施例中,所述在所述当前组件对应的配置信息中添加与其对应的事件绑定,包括:
若产品定义的软件操作无法使用单个子任务进行操作,则将所述产品定义的软件操作划分为多个软件子操作;
各个软件子操作由各个子任务按照预先设置的执行顺序进行操作,并在所述当前组件对应的配置信息中添加各个子任务对应的事件绑定。
第二方面,本发明实施例提供了一种组件管理装置,所述装置包括:获取模块和管理模块;其中,
所述获取模块,用于获取当前组件对应的配置信息;
所述管理模块,用于根据所述当前组件对应的配置信息对数据仓库中所述当前组件所依赖的数据进行管理。
在上述实施例中,所述管理模块,具体用于若所述当前组件对应的配置信息中被嵌入基于Javascript语法的运行沙箱,则通过所述基于Javascript语法的运行沙箱计算所述当前组件对应的目标值;在所述数据仓库中将所述当前组件对应的目标值传递给所述当前组件。
在上述实施例中,所述管理模块,具体用于若所述当前组件对应的配置信息中存在name属性的组件配置,则根据所述name属性的组件配置在所述数据仓库中创建所述当前组件所依赖的数据。
在上述实施例中,所述管理模块,还用于若所述当前组件对应的关联组件产生新的数据,则根据所述name属性的组件配置将所述新的数据写入到所述数据仓库中;若预先定义的点击操作或者键盘操作被用户触发,则在所述当前组件对应的配置信息中添加与其对应的事件绑定。
在上述实施例中,所述管理模块,具体用于通过所述容器组件的响应式接口向所述数据仓库发送HTTP请求;通过所述容器组件的响应式接口接收所述数据仓库返回的HTTP响应;根据所述数据仓库返回的HTTP响应将所述新的数据写入到所述数据仓库中。
在上述实施例中,所述管理模块,具体用于若产品定义的软件操作无法使用单个子任务进行操作,则将所述产品定义的软件操作划分为多个软件子操作;各个软件子操作由各个子任务按照预先设置的执行顺序进行操作,并在所述当前组件对应的配置信息中添加各个子任务对应的事件绑定。
第三方面,本发明实施例提供了一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例所述的组件管理方法。
第四方面,本发明实施例提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例所述的组件管理方法。
本发明实施例提出了一种组件管理方法、装置、电子设备及存储介质,先获取当前组件对应的配置信息;然后根据当前组件对应的配置信息对数据仓库中当前组件所依赖的数据进行管理。也就是说,在本发明的技术方案中,可以根据当前组件对应的配置信息对数据仓库中当前组件所依赖的数据进行管理。而在现有的组件管理方法中,前端工程师都需要手动编写代码来实现组件管理。因此,和现有技术相比,本发明实施例提出的组件管理方法、装置、电子设备及存储介质,不仅可以减少组件管理成本,还可以提高组件管理效率;并且,本发明实施例的技术方案实现简单方便、便于普及,适用范围更广。
附图说明
图1为本发明实施例一提供的组件管理方法的流程示意图;
图2为本发明实施例二提供的组件管理方法的流程示意图;
图3为本发明实施例三提供的组件管理方法的流程示意图;
图4为本发明实施例三提供的组件生成方法的流程示意图;
图5为本发明实施例三提供的容器组件通过ExpressionString动态管理组件的方法流程示意图;
图6为本发明实施例三提供的含有name属性的无状态组件更新方法的流程示意图;
图7为本发明实施例三提供的组件事件触发的方法流程示意图;
图8为本发明实施例四提供的组件管理装置的结构示意图;
图9为本发明实施例五提供的电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。
实施例一
图1为本发明实施例一提供的组件管理方法的流程示意图,该方法可以由组件管理装置或者电子设备来执行,该装置或者电子设备可以由软件和/或硬件的方式实现,该装置或者电子设备可以集成在任何具有网络通信功能的智能设备中。如图1所示,组件管理方法可以包括以下步骤:
S101、获取当前组件对应的配置信息。
在本发明的具体实施例中,电子设备可以获取当前组件对应的配置信息。在RCRE中,组件又分为两种类型:无状态组件和有状态组件。在RCRE中,除了容器container组件之外的其他组件都是无状态组件。开发者只需要把container组件和其他组件分开来看待即可。无状态组件和有状态组件的唯一区别就在于无状态组件不会持有私有的数据模型,它所需要的任何数据,都会通过一种特殊的方式,从父级组件中的有状态组件上获取。不管是无状态组件还是有状态组件,任何一个组件都必然会包含类型type这个属性。type属性代表着组件的类型。比如type为container的组件就是container组件,type为text的组件就是text文本组件。有状态组件不仅能够持有自己的私有数据模型,也可以通过dataProvider配置,来指定通过什么样的方式来获取新的数据,再合并到原有的数据模型中。dataProvider支持多种获取数据的方法,不同获取数据方式会通过mode属性来进行区分,不同类型的获取数据方式最终都会把获取到的数据合并到原有的数据模型中。因此,在本发明的具体实施例中,电子设备可以预先设置当前组件对应的配置信息,然后在对当前组件的管理过程中就可以直接获取当前组件对应的配置信息。
S102、根据当前组件对应的配置信息对数据仓库中当前组件所依赖的数据进行管理。
在本发明的具体实施例中,电子设备可以根据当前组件对应的配置信息对数据仓库中当前组件所依赖的数据进行管理。具体地,若当前组件对应的配置信息中被嵌入基于Javascript语法的运行沙箱,则电子设备通过基于Javascript语法的运行沙箱计算当前组件对应的目标值;然后在数据仓库中将当前组件对应的目标值传递给当前组件。较佳地,在本发明的具体实施例中,若当前组件对应的配置信息中存在name属性的组件配置,则电子设备可以根据name属性的组件配置在数据仓库中创建当前组件所依赖的数据。
本发明实施例提出的组件管理方法,先获取当前组件对应的配置信息;然后根据当前组件对应的配置信息对数据仓库中当前组件所依赖的数据进行管理。也就是说,在本发明的技术方案中,可以根据当前组件对应的配置信息对数据仓库中当前组件所依赖的数据进行管理。而在现有的组件管理方法中,前端工程师都需要手动编写代码来实现组件管理。因此,和现有技术相比,本发明实施例提出的组件管理方法,不仅可以减少组件管理成本,还可以提高组件管理效率;并且,本发明实施例的技术方案实现简单方便、便于普及,适用范围更广。
实施例二
图2为本发明实施例二提供的组件管理方法的流程示意图。如图2所示,组件管理方法可以包括以下步骤:
S201、获取当前组件对应的配置信息。
在本发明的具体实施例中,电子设备可以获取当前组件对应的配置信息。在RCRE中,组件又分为两种类型:无状态组件和有状态组件。在RCRE中,除了container组件之外的其他组件都是无状态组件。开发者只需要把container组件和其他组件分开来看待即可。无状态组件和有状态组件的唯一区别就在于无状态组件不会持有私有的数据模型,它所需要的任何数据,都会通过一种特殊的方式,从父级组件中的有状态组件上获取。不管是无状态组件还是有状态组件,任何一个组件都必然会包含type这个属性。type属性代表着组件的类型。比如type为container的组件就是container组件,type为text的组件就是text文本组件。有状态组件不仅能够持有自己的私有数据模型,也可以通过dataProvider配置,来指定通过什么样的方式来获取新的数据,再合并到原有的数据模型中。dataProvider支持多种获取数据的方法,不同获取数据方式会通过mode属性来进行区分,不同类型的获取数据方式最终都会把获取到的数据合并到原有的数据模型中。因此,在本发明的具体实施例中,电子设备可以预先设置当前组件对应的配置信息,然后在对当前组件的管理过程中就可以直接获取当前组件对应的配置信息。
S202、若当前组件对应的配置信息中被嵌入基于Javascript语法的运行沙箱,则通过基于Javascript语法的运行沙箱计算当前组件对应的目标值。
在本发明的具体实施例中,若当前组件对应的配置信息中被嵌入基于Javascript语法的运行沙箱,则电子设备可以通过基于Javascript语法的运行沙箱计算当前组件对应的目标值。具体地,电子设备可以先在当前组件对应的配置信息中获取到基于Javascript语法的运行沙箱;然后通过基于Javascript语法的运行沙箱计算当前组件对应的目标值。
S203、在数据仓库中将当前组件对应的目标值传递给当前组件。
在本发明的具体实施例中,电子设备可以在数据仓库中将当前组件对应的目标值传递给当前组件。具体地,电子设备可以先在数据仓库中确定出当前组件,然后在数据仓库中将当前组件对应的目标值传递给当前组件。
本发明实施例提出的组件管理方法,先获取当前组件对应的配置信息;然后根据当前组件对应的配置信息对数据仓库中当前组件所依赖的数据进行管理。也就是说,在本发明的技术方案中,可以根据当前组件对应的配置信息对数据仓库中当前组件所依赖的数据进行管理。而在现有的组件管理方法中,前端工程师都需要手动编写代码来实现组件管理。因此,和现有技术相比,本发明实施例提出的组件管理方法,不仅可以减少组件管理成本,还可以提高组件管理效率;并且,本发明实施例的技术方案实现简单方便、便于普及,适用范围更广。
实施例三
图3为本发明实施例三提供的组件管理方法的流程示意图。如图3所示,组件管理方法可以包括以下步骤:
S301、获取当前组件对应的配置信息。
在本发明的具体实施例中,电子设备可以获取当前组件对应的配置信息。在RCRE中,组件又分为两种类型:无状态组件和有状态组件。在RCRE中,除了container组件之外的其他组件都是无状态组件。开发者只需要把container组件和其他组件分开来看待即可。无状态组件和有状态组件的唯一区别就在于无状态组件不会持有私有的数据模型,它所需要的任何数据,都会通过一种特殊的方式,从父级组件中的有状态组件上获取。不管是无状态组件还是有状态组件,任何一个组件都必然会包含type这个属性。type属性代表着组件的类型。比如type为container的组件就是container组件,type为text的组件就是text文本组件。有状态组件不仅能够持有自己的私有数据模型,也可以通过dataProvider配置,来指定通过什么样的方式来获取新的数据,再合并到原有的数据模型中。dataProvider支持多种获取数据的方法,不同获取数据方式会通过mode属性来进行区分,不同类型的获取数据方式最终都会把获取到的数据合并到原有的数据模型中。因此,在本发明的具体实施例中,电子设备可以预先设置当前组件对应的配置信息,然后在对当前组件的管理过程中就可以直接获取当前组件对应的配置信息。
S302、若当前组件对应的配置信息中存在name属性的组件配置,则根据name属性的组件配置在数据仓库中创建当前组件所依赖的数据。
在本发明的具体实施例中,若当前组件对应的配置信息中存在name属性的组件配置,则电子设备可以根据name属性的组件配置在数据仓库中创建当前组件所依赖的数据。具体地,电子设备可以先在当前组件对应的配置信息中获取到name属性的组件配置;然后根据name属性的组件配置在数据仓库中创建当前组件所依赖的数据。
S303、若当前组件对应的关联组件产生新的数据,则根据name属性的组件配置将新的数据写入到数据仓库中。
在本发明的具体实施例中,若当前组件对应的关联组件产生新的数据,则电子设备可以根据name属性的组件配置将新的数据写入到数据仓库中。具体地,电子设备可以先通过容器组件的响应式接口向数据仓库发送HTTP请求;然后通过容器组件的响应式接口接收数据仓库返回的HTTP响应;再根据数据仓库返回的HTTP响应将新的数据写入到数据仓库中。
S304、若预先定义的点击操作或者键盘操作被用户触发,则在当前组件对应的配置信息中添加与其对应的事件绑定。
在本发明的具体实施例中,若预先定义的点击操作或者键盘操作被用户触发,则电子设备在当前组件对应的配置信息中添加与其对应的事件绑定。具体地,若产品定义的软件操作无法使用单个子任务进行操作,则电子设备将产品定义的软件操作划分为多个软件子操作;各个软件子操作由各个子任务按照预先设置的执行顺序进行操作,并在当前组件对应的配置信息中添加各个子任务对应的事件绑定。
图4为本发明实施例三提供的组件生成方法的流程示意图。如图4所示,组件生成方法可以包括以下步骤:S401、创建顶级组件;S402、读取子组件的配置;S403、是否是容器组建;若是,执行S404;否则,执行S412;S404、在依据容器组件的model属性,在数据仓库中分配存储;S405、初始化data属性上的默认值;S406、初始化子组件的默认值;S407、初始化响应式接口;S408、初始化无状态组件控制函数;S409、创建容器组件;S410、是否含有子组件;若是,执行S411;否则,执行S402;S411、组件生成完毕,开始监听用户操作。
组件的管理是用户编写了包含整个页面所有组件的关系和逻辑的配置之后,将完成的配置导入引擎进行组件渲染。在渲染初期,引擎会创建一个顶级组件用于挂载子级组件。然后依次递归解析配置来渲染组件。如果组件是一个容器组件,则会先根据容器组件配置上的model属性在数据仓库中预先分配一个存储空间,用于存储当前容器组件以及容器组件下所有无状态组件的数据。容器组件在初始化的时候,还会初始化填写在组件配置上的初始化数据以及控制子组件状态的相关函数和方法,以及初始化响应式接口。如果组件是一个无状态组件,那么直接创建组件即可,然后将组件挂载到父级组件下面。组件的渲染是一个递归的过程,因为组件和组件之间可以嵌套,嵌套的深度由用户编写的组件配置来决定。
图5为本发明实施例三提供的容器组件通过ExpressionString动态管理组件的方法流程示意图。如图5所示,容器组件通过ExpressionString动态管理组件的方法可以包括以下步骤:S501、数据仓库数据出现变更;S502、触发容器组件更新;S503、读取数据仓库数据,获取最新的数据上下文;S504、开始更新无状态组件;S505、解析无状态组件的配置中的属性值;S506、判断是否含有ExpressionString;若是,执行S507;否则,执行S510;S507、导入数据上下文,执行ExpressionString;S508、获取执行结果;S509、将ExpressionString替换成执行结果;S510、无状态组件获取处理后的配置,实现更新。
ExpressionString是一个基于JavaScript语法的运行沙箱,用户在这个沙箱内部的编写的代码,可以被动态计算出结果。假如这个时候,数据仓库中的值发生的变更,会触发容器组件发生更新,容器组件的更新进而会带动无状态组件进行更新。每次容器组件更新时,都会将当前状态下最新的数据组装成上下文对象传递到无状态组件。无状态组件每次更新的时,会对用户编写的ExpressionString进行解析,并以此执行ExpressionString中的JavaScript代码。执行javascript代码之前,会将上下文对象导入到代码作用域内,供ExpressionString中的javaScript代码调用。ExpressionString执行完毕后,会将原有的ExpressionString替换成执行结果,无状态组件拿到被解析之后的配置,重新进行更新和渲染。
图6为本发明实施例三提供的含有name属性的无状态组件更新方法的流程示意图。如图6所示,含有name属性的无状态组件更新方法可以包括以下步骤:S601、数据仓库数据出现变更;S602、触发容器组件更新;S603、触发无状态组件更新;S604、无状态组件读取配置中的name属性;S605、以name作为参数,调用容器组件提供的函数,获取当前组件的值;S606、无状态组件渲染。
容器组件向无状态组件传递数据除了ExpressionString还有通过无状态组件配置上的name属性来完成。同样,当数据容器发生更新时,容器组件开始更新,容器组件的更新会带动内部所有的无状态组件更新。无状态组件的更新的时候,如果组件的配置中存在name属性,组件会调用容器组件向下传递的函数,传入name的值作为参数,即可得到这个在数据仓库中key为name属性值的值。无状态拿到值之后就会立即进行更新并渲染。
图7为本发明实施例三提供的组件事件触发的方法流程示意图。如图7所示,组建事件触发的方法可以包括以下步骤:S701、用户点击按钮,触发点击事件;S702、触发无状态组件的事件回调;S703、解析事件绑定上的ExpressionString,获取事件触发的参数;S704、消息派发到任务组控制器;S705、判断事件绑定的任务是普通任务还是任务组;若是任务组,执行S706;若是普通任务,执行S708;S706、执行第1个任务;S707、执行第N个任务;其中,N为大于1的自然数;S708、执行任务。
当用户进行页面操作,比如点击某个按钮。按钮的点击事件回调会先被触发,进而触发显示为按钮的这个无状态组件的点击事件回调函数。无状态组件的点击事件回调会读取配置中trigger属性的值,来找到配置中制定需要被执行的任务和传递过去的参数。参数中支持嵌入ExpressionString来实现在点击的时候,动态读取容器组件中的值来计算出一些自定义的值。解析完成之后,无状态组件会依据配置中targetCustomer的定义,将params的值发送到容器组件中name值与其相等的任务。如果name的值是一个任务组的配置,那么会依据steps属性的定义,按照数组的顺序依次执行任务。
本发明实施例提出的组件管理方法,先获取当前组件对应的配置信息;然后根据当前组件对应的配置信息对数据仓库中当前组件所依赖的数据进行管理。也就是说,在本发明的技术方案中,可以根据当前组件对应的配置信息对数据仓库中当前组件所依赖的数据进行管理。而在现有的组件管理方法中,前端工程师都需要手动编写代码来实现组件管理。因此,和现有技术相比,本发明实施例提出的组件管理方法,不仅可以减少组件管理成本,还可以提高组件管理效率;并且,本发明实施例的技术方案实现简单方便、便于普及,适用范围更广。
实施例四
图8为本发明实施例四提供的组件管理装置的结构示意图。如图8所示,本发明实施例所述的组件管理装置可以包括:获取模块801和管理模块802;其中,
所述获取模块801,用于获取当前组件对应的配置信息;
所述管理模块802,用于根据所述当前组件对应的配置信息对数据仓库中所述当前组件所依赖的数据进行管理。
进一步的,所述管理模块802,具体用于若所述当前组件对应的配置信息中被嵌入基于Javascript语法的运行沙箱,则通过所述基于Javascript语法的运行沙箱计算所述当前组件对应的目标值;在所述数据仓库中将所述当前组件对应的目标值传递给所述当前组件。
进一步的,所述管理模块802,具体用于若所述当前组件对应的配置信息中存在name属性的组件配置,则根据所述name属性的组件配置在所述数据仓库中创建所述当前组件所依赖的数据。
进一步的,所述管理模块802,还用于若所述当前组件对应的关联组件产生新的数据,则根据所述name属性的组件配置将所述新的数据写入到所述数据仓库中;若预先定义的点击操作或者键盘操作被用户触发,则在所述当前组件对应的配置信息中添加与其对应的事件绑定。
进一步的,所述管理模块802,具体用于通过所述容器组件的响应式接口向所述数据仓库发送HTTP请求;通过所述容器组件的响应式接口接收所述数据仓库返回的HTTP响应;根据所述数据仓库返回的HTTP响应将所述新的数据写入到所述数据仓库中。
进一步的,所述管理模块802,具体用于若产品定义的软件操作无法使用单个子任务进行操作,则将所述产品定义的软件操作划分为多个软件子操作;各个软件子操作由各个子任务按照预先设置的执行顺序进行操作,并在所述当前组件对应的配置信息中添加各个子任务对应的事件绑定。
上述组件管理装置可执行本发明任意实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明任意实施例提供的组件管理方法。
实施例五
图9为本发明实施例五提供的电子设备的结构示意图。图9示出了适于用来实现本发明实施方式的示例性电子设备的框图。图9显示的电子设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图9所示,电子设备12以通用计算设备的形式表现。电子设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
电子设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。电子设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图9未显示,通常称为“硬盘驱动器”)。尽管图9中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
电子设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该电子设备12交互的设备通信,和/或与使得该电子设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,电子设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与电子设备12的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的组件管理方法。
实施例六
本发明实施例六提供了一种计算机存储介质。
本发明实施例的计算机可读存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (14)

1.一种组件管理方法,其特征在于,所述方法包括:
获取当前组件对应的配置信息;
根据所述当前组件对应的配置信息对数据仓库中所述当前组件所依赖的数据进行管理。
2.根据权利要求1所述的方法,其特征在于,所述根据所述当前组件对应的配置信息对数据仓库中所述当前组件所依赖的数据进行管理,包括:
若所述当前组件对应的配置信息中被嵌入基于Javascript语法的运行沙箱,则通过所述基于Javascript语法的运行沙箱计算所述当前组件对应的目标值;
在所述数据仓库中将所述当前组件对应的目标值传递给所述当前组件。
3.根据权利要求1所述的方法,其特征在于,所述根据所述当前组件对应的配置信息对数据仓库中所述当前组件所依赖的数据进行管理,包括:
若所述当前组件对应的配置信息中存在名称name属性的组件配置,则根据所述name属性的组件配置在所述数据仓库中创建所述当前组件所依赖的数据。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
若所述当前组件对应的关联组件产生新的数据,则根据所述name属性的组件配置将所述新的数据写入到所述数据仓库中;
若预先定义的点击操作或者键盘操作被用户触发,则在所述当前组件对应的配置信息中添加与其对应的事件绑定。
5.根据权利要求4所述的方法,其特征在于,所述将所述新的数据写入到所述数据仓库中,包括:
通过所述容器组件的响应式接口向所述数据仓库发送超文本传输协议HTTP请求;
通过所述容器组件的响应式接口接收所述数据仓库返回的HTTP响应;
根据所述数据仓库返回的HTTP响应将所述新的数据写入到所述数据仓库中。
6.根据权利要求4所述的方法,其特征在于,所述在所述当前组件对应的配置信息中添加与其对应的事件绑定,包括:
若产品定义的软件操作无法使用单个子任务进行操作,则将所述产品定义的软件操作划分为多个软件子操作;
各个软件子操作由各个子任务按照预先设置的执行顺序进行操作,并在所述当前组件对应的配置信息中添加各个子任务对应的事件绑定。
7.一种组件管理装置,其特征在于,所述装置包括:获取模块和管理模块;其中,
所述获取模块,用于获取当前组件对应的配置信息;
所述管理模块,用于根据所述当前组件对应的配置信息对数据仓库中所述当前组件所依赖的数据进行管理。
8.根据权利要求7所述的装置,其特征在于:
所述管理模块,具体用于若所述当前组件对应的配置信息中被嵌入基于Javascript语法的运行沙箱,则通过所述基于Javascript语法的运行沙箱计算所述当前组件对应的目标值;在所述数据仓库中将所述当前组件对应的目标值传递给所述当前组件。
9.根据权利要求7所述的装置,其特征在于:
所述管理模块,具体用于若所述当前组件对应的配置信息中存在name属性的组件配置,则根据所述name属性的组件配置在所述数据仓库中创建所述当前组件所依赖的数据。
10.根据权利要求9所述的装置,其特征在于,所述管理模块,还用于若所述当前组件对应的关联组件产生新的数据,则根据所述name属性的组件配置将所述新的数据写入到所述数据仓库中;若预先定义的点击操作或者键盘操作被用户触发,则在所述当前组件对应的配置信息中添加与其对应的事件绑定。
11.根据权利要求10所述的装置,其特征在于:
所述管理模块,具体用于通过所述容器组件的响应式接口向所述数据仓库发送HTTP请求;通过所述容器组件的响应式接口接收所述数据仓库返回的HTTP响应;根据所述数据仓库返回的HTTP响应将所述新的数据写入到所述数据仓库中。
12.根据权利要求10所述的装置,其特征在于:
所述管理模块,具体用于若产品定义的软件操作无法使用单个子任务进行操作,则将所述产品定义的软件操作划分为多个软件子操作;各个软件子操作由各个子任务按照预先设置的执行顺序进行操作,并在所述当前组件对应的配置信息中添加各个子任务对应的事件绑定。
13.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1至6中任一项所述的组件管理方法。
14.一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至6中任一项所述的组件管理方法。
CN201910004541.4A 2019-01-03 2019-01-03 一种组件管理方法、装置、电子设备及存储介质 Active CN111399806B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910004541.4A CN111399806B (zh) 2019-01-03 2019-01-03 一种组件管理方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910004541.4A CN111399806B (zh) 2019-01-03 2019-01-03 一种组件管理方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN111399806A true CN111399806A (zh) 2020-07-10
CN111399806B CN111399806B (zh) 2023-09-01

Family

ID=71428308

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910004541.4A Active CN111399806B (zh) 2019-01-03 2019-01-03 一种组件管理方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN111399806B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114443169A (zh) * 2022-01-28 2022-05-06 中国民生银行股份有限公司 一种实现技术组件平台化的方法及装置

Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020028963A (ko) * 2002-03-04 2002-04-17 원동학 웹 서버간의 데이터를 송/수신하기 위한클라이언트컴퓨터의 에이드 데이터셋 컴포넌트
US20060010425A1 (en) * 2001-10-29 2006-01-12 Willadsen Gloria J Methods and apparatus for automated mangement of software
CN1828595A (zh) * 2005-02-28 2006-09-06 微软公司 用于公共数据平台的存储api
US20090064192A1 (en) * 2007-09-05 2009-03-05 International Business Machines Corporation Managing Collections of Appliances
CN101454766A (zh) * 2006-06-15 2009-06-10 国际商业机器公司 组合软件服务的管理
US20090157728A1 (en) * 2007-12-18 2009-06-18 International Business Machines Corporation Discovery and management of configuration data contained within mashups
CN101655789A (zh) * 2009-09-22 2010-02-24 用友软件股份有限公司 一种实现应用组件热插拔的方法和装置
US20100161777A1 (en) * 2008-12-22 2010-06-24 Morris Robert P Method and System For Providing A Subscription To A Tuple Based On A Variable Identifier
CN103544013A (zh) * 2013-10-25 2014-01-29 优视科技有限公司 一种插件系统及插件管理方法
CN104657142A (zh) * 2015-02-12 2015-05-27 中国科学院计算机网络信息中心 一种基于OSGi技术的CCFD系统
CN105022630A (zh) * 2015-06-30 2015-11-04 中标软件有限公司 一种组件管理系统及组件管理方法
US20160077819A1 (en) * 2014-09-16 2016-03-17 Xiaomi Inc. Method and device for running application program
CN107451296A (zh) * 2017-08-21 2017-12-08 南京焦点领动云计算技术有限公司 一种基于组件的网站模块化渲染方法
US20180052992A1 (en) * 2016-08-18 2018-02-22 Qualcomm Innovation Center, Inc. Auto-sandboxing website or parts of website in browser to protect user privacy and security
CN107733977A (zh) * 2017-08-31 2018-02-23 北京百度网讯科技有限公司 一种基于Docker的集群管理方法及装置
CN107944266A (zh) * 2017-12-15 2018-04-20 北京奇虎科技有限公司 组件管理方法、装置及移动终端
CN108319575A (zh) * 2018-01-30 2018-07-24 百度在线网络技术(北京)有限公司 一种页面组件的校验方法、装置、服务器和存储介质
CN108664296A (zh) * 2017-03-31 2018-10-16 阿里巴巴集团控股有限公司 一种页面渲染方法和装置、一种页面处理方法和装置
CN108694073A (zh) * 2018-05-11 2018-10-23 腾讯科技(深圳)有限公司 虚拟场景的控制方法、装置、设备及存储介质
CN109117119A (zh) * 2018-07-02 2019-01-01 成都四方伟业软件股份有限公司 一种多态组件融合方法

Patent Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060010425A1 (en) * 2001-10-29 2006-01-12 Willadsen Gloria J Methods and apparatus for automated mangement of software
KR20020028963A (ko) * 2002-03-04 2002-04-17 원동학 웹 서버간의 데이터를 송/수신하기 위한클라이언트컴퓨터의 에이드 데이터셋 컴포넌트
CN1828595A (zh) * 2005-02-28 2006-09-06 微软公司 用于公共数据平台的存储api
CN101454766A (zh) * 2006-06-15 2009-06-10 国际商业机器公司 组合软件服务的管理
US20090064192A1 (en) * 2007-09-05 2009-03-05 International Business Machines Corporation Managing Collections of Appliances
US20090157728A1 (en) * 2007-12-18 2009-06-18 International Business Machines Corporation Discovery and management of configuration data contained within mashups
US20100161777A1 (en) * 2008-12-22 2010-06-24 Morris Robert P Method and System For Providing A Subscription To A Tuple Based On A Variable Identifier
CN101655789A (zh) * 2009-09-22 2010-02-24 用友软件股份有限公司 一种实现应用组件热插拔的方法和装置
CN103544013A (zh) * 2013-10-25 2014-01-29 优视科技有限公司 一种插件系统及插件管理方法
US20160077819A1 (en) * 2014-09-16 2016-03-17 Xiaomi Inc. Method and device for running application program
CN104657142A (zh) * 2015-02-12 2015-05-27 中国科学院计算机网络信息中心 一种基于OSGi技术的CCFD系统
CN105022630A (zh) * 2015-06-30 2015-11-04 中标软件有限公司 一种组件管理系统及组件管理方法
US20180052992A1 (en) * 2016-08-18 2018-02-22 Qualcomm Innovation Center, Inc. Auto-sandboxing website or parts of website in browser to protect user privacy and security
CN108664296A (zh) * 2017-03-31 2018-10-16 阿里巴巴集团控股有限公司 一种页面渲染方法和装置、一种页面处理方法和装置
CN107451296A (zh) * 2017-08-21 2017-12-08 南京焦点领动云计算技术有限公司 一种基于组件的网站模块化渲染方法
CN107733977A (zh) * 2017-08-31 2018-02-23 北京百度网讯科技有限公司 一种基于Docker的集群管理方法及装置
CN107944266A (zh) * 2017-12-15 2018-04-20 北京奇虎科技有限公司 组件管理方法、装置及移动终端
CN108319575A (zh) * 2018-01-30 2018-07-24 百度在线网络技术(北京)有限公司 一种页面组件的校验方法、装置、服务器和存储介质
CN108694073A (zh) * 2018-05-11 2018-10-23 腾讯科技(深圳)有限公司 虚拟场景的控制方法、装置、设备及存储介质
CN109117119A (zh) * 2018-07-02 2019-01-01 成都四方伟业软件股份有限公司 一种多态组件融合方法

Non-Patent Citations (12)

* Cited by examiner, † Cited by third party
Title
G. COCKTON: "User interface managers, interface components and re-use", 《EE COLLOQUIUM ON FORMAL METHODS AND HUMAN-COMPUTER INTERACTION: II》 *
G. COCKTON: "User interface managers, interface components and re-use", 《EE COLLOQUIUM ON FORMAL METHODS AND HUMAN-COMPUTER INTERACTION: II》, 6 August 2002 (2002-08-06), pages 1 - 4 *
SEGUN AINA: "A new spontaneous expression database and a study of classification-based expression analysis methods", 《2014 22ND EUROPEAN SIGNAL PROCESSING CONFERENCE (EUSIPCO)》, pages 1 - 7 *
佚名: "Prism初研究之依赖管理", 《HTTPS://WWW.CNBLOGS.COM/QIANZI067/P/5804873.HTML》 *
佚名: "Prism初研究之依赖管理", 《HTTPS://WWW.CNBLOGS.COM/QIANZI067/P/5804873.HTML》, 24 August 2016 (2016-08-24), pages 1 - 4 *
宇辰(馨辰): "分享动态拼接Expression表达式组件及原理", pages 1 - 4, Retrieved from the Internet <URL:《https://www.cnblogs.com/wzxinchen/p/4611592.html》> *
张伟: "组件的标识与管理", 《航空计算技术》 *
张伟: "组件的标识与管理", 《航空计算技术》, 13 February 2004 (2004-02-13), pages 79 - 81 *
曾立鹍: "Android系统应用程序组件安全性分析", 《软件》, pages 2014 - 06 *
王霄: "组件化的iOS国贸商城客户端重构", 《中国优秀硕士学位论文全文数据库 (信息科技辑)》 *
王霄: "组件化的iOS国贸商城客户端重构", 《中国优秀硕士学位论文全文数据库 (信息科技辑)》, 15 November 2018 (2018-11-15), pages 138 - 165 *
苗志强: "基于Pro/E自适应可扩展的UNIX主机信息采集系统设计与实现", 《计算机科学与技术》, pages 1 - 30 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114443169A (zh) * 2022-01-28 2022-05-06 中国民生银行股份有限公司 一种实现技术组件平台化的方法及装置

Also Published As

Publication number Publication date
CN111399806B (zh) 2023-09-01

Similar Documents

Publication Publication Date Title
CN109634598B (zh) 一种页面显示方法、装置、设备及存储介质
CN109542399B (zh) 软件开发方法、装置、终端设备及计算机可读存储介质
US8839186B2 (en) Entity morphing in metamodel-based tools
CN108776587B (zh) 数据获取方法、装置、计算机设备以及存储介质
CN111708557B (zh) 更新配置文件的方法、设备及存储介质
CN109726217B (zh) 一种数据库操作方法、装置、设备及存储介质
CN112015468A (zh) 一种接口文档处理方法、装置、电子设备以及存储介质
CN114443076A (zh) 镜像构建方法、装置、设备及存储介质
CN114117190A (zh) 数据处理方法、装置、存储介质及电子设备
CN111399806B (zh) 一种组件管理方法、装置、电子设备及存储介质
CN113419740A (zh) 程序数据流的分析方法、装置、电子设备及可读存储介质
CN113448570A (zh) 数据处理方法、装置、电子设备及存储介质
CN115809056A (zh) 组件复用实现方法、装置和终端设备、可读存储介质
CN110554892A (zh) 信息获取方法和装置
US20130138690A1 (en) Automatically identifying reused model artifacts in business process models
CN115421831A (zh) 生成活动组件调用关系的方法、装置、设备及存储介质
CN114661402A (zh) 一种界面渲染方法、装置、电子设备及计算机可读介质
CN111782196A (zh) 基于mvp架构的开发方法及装置
CN109669720B (zh) 基于Promise的链式异步请求处理方法、装置及电子设备
CN106570143B (zh) 一种发送响应对象的方法和装置
CN111813407A (zh) 游戏开发方法、游戏运行方法、装置和电子设备
US11301498B2 (en) Multi-cloud object store access
CN112445790B (zh) 一种报表数据存储方法、装置、设备及介质
CN114119806A (zh) 嵌套流程图的生成方法、装置、电子设备及存储介质
CN112306324B (zh) 信息处理方法、装置、设备和介质

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