一种组件通信方法以及组件通信模块技术

技术编号:18417215 阅读:20 留言:0更新日期:2018-07-11 09:05
本发明专利技术实施例提供了一种组件通信方法,用于降低应用中组件间通信的复杂程度。本发明专利技术提供的组件通信方法用于多个组件之间的通信,其中,所述组件为多个,每个所述组件对应多个组件状态,所述方法包括:监听组件状态管理中心中的组件状态,所述组件状态管理中心中注册有每个组件对应的组件状态及与每个所述组件状态对应的组件行为;当监听到所述组件状态发生变化后,从所述组件状态管理中心获取组件状态变化信息,所述组件状态变化信息中包括发生变化的组件对应的组件状态及所述发生变化的组件对应的组件行为;向预先定制所述组件状态变化信息的目标组件发送所述组件状态变化信息。本发明专利技术实施例还提供了相应的组件通信装置。

A component communication method and component communication module

The embodiment of the invention provides a component communication method for reducing the complexity of communication between components in application. The component communication method provided by the present invention is used for communication between multiple components, in which the components are multiple, each of which corresponds to a plurality of component states, and the method includes: monitor component states in the component state management center, and the component state management center is registered with the component state corresponding to each component. And the component behavior corresponding to the state of each of the components; when the state changes the state of the component, the component state change information is obtained from the state management center of the component, and the component state of the component state change information includes the component state corresponding to the changing component and the component line corresponding to the component that has changed. The target component that pre customize the state change information of the component sends the state change information of the component. The embodiment of the invention also provides a corresponding component communication device.

【技术实现步骤摘要】
一种组件通信方法以及组件通信模块
本专利技术涉及互联网领域,尤其涉及一种组件通信方法以及组件通信模块。
技术介绍
随着科学技术的进步,互联网的发展也日新月异。目前的网页应用开发中,单页面应用(SinglePageApplication,SPA)逐渐成为了主流。单页面应用是一种特殊的网络应用,它将所有的活动局限在一个网络页面内,仅在该网络页面初始化时加载相应的超文本标记语言(HyperTextMarkupLanguage,HTML)、JavaScript和层叠样式表(CascadingStyleSheets,CSS)。一旦页面加载完成了,单页面应用不会因为用户的操作而进行页面的重新加载或跳转。取而代之的是利用JavaScript动态的变换HTML的内容,从而实现UI与用户的交互。由于避免了页面的重新加载,单页面应用可以提供较为流畅的用户体验。现阶段的应用中往往设置有多个组件,用于实现应用指定的功能,如导航栏、下拉菜单等。以单页面应用为例:单页面应用中的组件是HTML、JavaScript和CSS代码的集合,对外统一提供功能接口,且可以重复使用。应用的多个组件之间会进行通信。若组件的数量较多,则各组件会形成一个相互交叉的通信网。这种交叉形式的通信网结构较为复杂,后期维护非常困难。
技术实现思路
本专利技术实施例提供了一种组件通信方法和组件通信模块,用于降低应用中组件间通信的复杂程度。本专利技术提供的组件通信方法用于多个组件之间的通信,其中,所述组件为多个,每个所述组件对应多个组件状态,所述方法包括:监听组件状态管理中心中的组件状态,所述组件状态管理中心中注册有每个组件对应的组件状态及与每个所述组件状态对应的组件行为;当监听到所述组件状态发生变化后,从所述组件状态管理中心获取组件状态变化信息,所述组件状态变化信息中包括发生变化的组件对应的组件状态及所述发生变化的组件对应的组件行为;向预先定制所述组件状态变化信息的目标组件发送所述组件状态变化信息。可选的,在监听所述组件状态管理中心中的组件状态之前,所述方法还包括:获取每个所述组件对应的组件状态;获取与每个所述组件状态对应的组件行为;将每个所述组件对应的组件状态及与每个所述组件状态对应的组件行为注册在所述组件状态管理中心中。可选的,所述组件为网页中的组件,在将每个所述组件对应的组件状态及与每个所述组件状态对应的组件行为注册在所述组件状态管理中心中之前,所述方法还包括:检测是否发生网页加载行为;当检测到发生网页加载行为后,确定所述网页包括的组件、每个所述网页包括的组件所对应的组件状态及与每个所述组件状态对应的组件行为。可选的,向预先定制所述组件状态变化信息的目标组件发送所述组件状态变化信息之前,所述方法还包括:接收目标组件的组件状态定制指令,所述组件状态定制指令中携带有所述目标组件定制的组件标识;存储所述组件状态定制指令,使得在所述目标组件定制的组件状态发生变化时,根据所述组件状态定制指令中携带的组件标识,向所述目标组件发送组件状态变化消息。可选的,所述向预先定制所述组件状态变化信息的目标组件发送所述组件状态变化信息,包括:向组件管理中心发送所述组件状态变化信息,以使所述组件管理中心根据所述组件状态变化信息中携带的组件标识,确定定制所述组件状态变化信息的目标组件,并将所述状态变化信息发送至所述目标组件。本专利技术还提供了一种组件通信装置,用于多个组件间通信,所述组件为多个,每个所述组件对应多个组件状态,所述装置包括:状态监听模块,用于监听组件状态管理中心中的组件状态,所述组件状态管理中心中注册有每个组件对应的组件状态及与每个所述组件状态对应的组件行为;信息获取模块,用于当监听到所述组件状态发生变化后,从所述组件状态管理中心获取组件状态变化信息,所述组件状态变化信息中包括发生变化的组件对应的组件状态及所述发生变化的组件对应的组件行为;信息发送模块,用于向预先定制所述组件状态变化信息的目标组件发送所述组件状态变化信息。可选的,所述装置还包括:状态获取模块,用于获取每个所述组件对应的组件状态;行为获取模块,用于获取与每个所述组件状态对应的组件行为;信息注册模块,用于将每个所述组件对应的组件状态及与每个所述组件状态对应的组件行为注册在所述组件状态管理中心中。可选的,所述组件为网页中的组件,所述装置还包括:网页检测模块,用于检测是否发生网页加载行为;组件确定模块,用于当检测到发生网页加载行为后,确定所述网页包括的组件、每个所述网页包括的组件所对应的组件状态及与每个所述组件状态对应的组件行为。可选的,所述装置还包括:指令接收模块,用于接收目标组件的组件状态定制指令,所述组件状态定制指令中携带有所述目标组件定制的组件标识;指令存储模块,用于存储所述组件状态定制指令,使得在所述目标组件定制的组件状态发生变化时,根据所述组件状态定制指令中携带的组件标识,向所述目标组件发送组件状态变化消息。可选的,所述信息发送模块具体用于:向组件管理中心发送所述组件状态变化信息,以使所述组件管理中心根据所述组件状态变化信息中携带的组件标识,确定定制所述组件状态变化信息的目标组件,并将所述状态变化信息发送至所述目标组件。本专利技术实施例中,组件通信装置监听组件状态管理中心中的组件状态。在监听到状态管理中心中存在组件的状态发生变化后,从组件状态管理中心处获取组件状态变化信息。在获取了组件状态变化信息后,向预先定制了组件状态变化信息的目标组件发送该组件状态变化信息。这样就将发生变化的组件的组件变化信息通知给了目标组件,实现了发生变化的组件和目标组件之间的通信。且本专利技术实施例中发生变化的组件和目标组件之间不再直接进行信息交互,而是通过组件状态管理中心进行信息中转。这样就将交叉的通信网进行了解耦,降低了通信网的复杂程度。尤其当组件个数较多时,通信网的负载程度能够得到大幅度的降低,有利于后期的维护。附图说明图1为本专利技术实施例组件关系结构示意图;图2为本专利技术实施例提供的组件通信方法一个实施例流程图;图3为本专利技术实施例提供的组件通信方法另一个实施例流程图;图4为本专利技术实施例提供的组件通信方法另一个实施例流程图;图5为本专利技术实施例提供的组件通信方法一个实施例结构图;图6为本专利技术实施例提供的组件通信方法另一个实施例结构图。具体实施方式本专利技术实施例提供了一种组件通信方法,用于降低组件间通信的复杂程度。本专利技术还提供了相关的组件通信装置,以下将分别进行描述。现阶段的用户应用中普遍包括多个组件。组件是一系列的代码集合,在运行过程中可以视为功能模块,用于实现应用中的指定功能。每个组件可以具有多种组件状态。举例来说:应用的下拉菜单即可视为一个组件,用户选择下拉菜单中的不同选项,即可将下拉菜单置为不同的组件状态。同一应用中的不同组件之间可以存在关联关系,举例来说:应用中包括“国家”下拉菜单和“城市”下拉菜单两个组件,这两个组件之间存在关联关系。当用户选择“国家”下拉菜单中的“中国”选项时,“城市”下拉菜单中的选项变为中国的各个城市;当用户选择“国家”下拉菜单中的“美国”选项时,“城市”下拉菜单中的选项变为美国的各个城市。存在关联关系的组件之间可以进行通信。仍以上一段中的“国家”下拉菜单和“城市”下拉菜单两个组件为例:当“国家”下拉菜单被置为本文档来自技高网...

【技术保护点】
1.一种组件通信方法,其特征在于,所述组件为多个,每个所述组件对应多个组件状态,所述方法包括:监听组件状态管理中心中的组件状态,所述组件状态管理中心中注册有每个组件对应的组件状态及与每个所述组件状态对应的组件行为;当监听到所述组件状态发生变化后,从所述组件状态管理中心获取组件状态变化信息,所述组件状态变化信息中包括发生变化的组件对应的组件状态及所述发生变化的组件对应的组件行为;向预先定制所述组件状态变化信息的目标组件发送所述组件状态变化信息。

【技术特征摘要】
1.一种组件通信方法,其特征在于,所述组件为多个,每个所述组件对应多个组件状态,所述方法包括:监听组件状态管理中心中的组件状态,所述组件状态管理中心中注册有每个组件对应的组件状态及与每个所述组件状态对应的组件行为;当监听到所述组件状态发生变化后,从所述组件状态管理中心获取组件状态变化信息,所述组件状态变化信息中包括发生变化的组件对应的组件状态及所述发生变化的组件对应的组件行为;向预先定制所述组件状态变化信息的目标组件发送所述组件状态变化信息。2.根据权利要求1所述的方法,其特征在于,在监听所述组件状态管理中心中的组件状态之前,所述方法还包括:获取每个所述组件对应的组件状态;获取与每个所述组件状态对应的组件行为;将每个所述组件对应的组件状态及与每个所述组件状态对应的组件行为注册在所述组件状态管理中心中。3.根据权利要求2所述的方法,其特征在于,所述组件为网页中的组件,在将每个所述组件对应的组件状态及与每个所述组件状态对应的组件行为注册在所述组件状态管理中心中之前,所述方法还包括:检测是否发生网页加载行为;当检测到发生网页加载行为后,确定所述网页包括的组件、每个所述网页包括的组件所对应的组件状态及与每个所述组件状态对应的组件行为。4.根据权利要求1所述的方法,其特征在于,向预先定制所述组件状态变化信息的目标组件发送所述组件状态变化信息之前,所述方法还包括:接收目标组件的组件状态定制指令,所述组件状态定制指令中携带有所述目标组件定制的组件标识;存储所述组件状态定制指令,使得在所述目标组件定制的组件状态发生变化时,根据所述组件状态定制指令中携带的组件标识,向所述目标组件发送组件状态变化消息。5.根据权利要求4所述的方法,其特征在于,所述向预先定制所述组件状态变化信息的目标组件发送所述组件状态变化信息,包括:向组件管理中心发送所述组件状态变化信息,以使所述组件管理中心根据所述组件状态变化信息中携带的组件标识,确定定制所述组件状态变化信息的目标组件,并将所述状...

【专利技术属性】
技术研发人员:赵泽彬
申请(专利权)人:北京国双科技有限公司
类型:发明
国别省市:北京,11

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

1