一种微前端的通信方法、通信装置、终端设备及存储介质制造方法及图纸

技术编号:35207742 阅读:13 留言:0更新日期:2022-10-15 10:19
本公开提供一种微前端的通信方法、通信装置、终端设备及存储介质。该方法包括:通过第一消息模块接收第一子应用模块发送的第一消息,所述第一消息模块用于主应用模块与第一子应用模块进行通信;解析所述第一消息,得到所述第一消息对应的可执行命令;执行所述可执行命令。在本公开中,通过执行解析得到的第一消息对应的可执行命令,可实现主应用模块和子应用模块之间的通信。模块之间的通信。模块之间的通信。

【技术实现步骤摘要】
一种微前端的通信方法、通信装置、终端设备及存储介质


[0001]本公开涉及但不限于计算机
,尤其涉及一种微前端的通信方法、通信装置、终端设备及存储介质。

技术介绍

[0002]当前主流的微前端管理系统多采用老一代嵌入式框架(iframe)构建前端微应用,但仍存在不少缺点,如主应用和子应用的通信、浏览器历史(history)问题、子应用操作受限等问题。近年来,随着后端微服务机制的完善和稳定发展,前端微服务的解决方案也在不断改进和完善。从老一代嵌入式框架(iframe)式外系统嵌入集成,到现在微前端框架的逐步上线,前端微服务化的基建越来越完善。随着企业信息化的推广和完善,信息化系统的需求迭代也越来越频繁,同时企业对业务的划分也越来越明显,不希望各个业务间相互影响,企业对前后端微服务化的需求越来越迫切,要求也越来越高。
[0003]因此,在现有技术中并不存在一种合适的微前端的通信方法。

技术实现思路

[0004]本公开提供了一种微前端的通信方法、通信装置、终端设备及存储介质,以实现微前端中主应模块和子应用模块之间的通信。
[0005]第一方面,本公开提供一种微前端的通信方法,包括:通过第一消息模块接收第一子应用模块发送的第一消息,第一消息模块用于主应用模块与第一子应用模块进行通信;解析第一消息,得到第一消息对应的可执行命令;执行可执行命令。
[0006]在一些可能的实施方式中,在通过第一消息模块接收第一子应用模块发送的第一消息之前,方法还包括:挂载第一子应用模块;将第一消息模块传递给第一子应用模块。
[0007]在一些可能的实施方式中,在通过第一消息模块接收第一子应用模块发送的第一消息之后,方法还包括:解析第一消息,确定第二子应用模块;调用第二子应用模块的第二消息模块,第二消息模块用于第二子应用模块与主应用模块进行通信;通过第二消息模块向第二子应用模块发送第一消息。
[0008]在一些可能的实施方式中,在通过第一消息模块接收第一子应用模块发送的第一消息之前,方法还包括:挂载第二子应用模块;接收第二子应用模块传递的第二消息模块;保存第二消息模块。
[0009]在一些可能的实施方式中,主应用模块包括子应用模块消息模块仓库;保存第二消息模块,包括:将第二消息模块保存至子应用模块消息模块仓库。
[0010]在一些可能的实施方式中,可执行命令为缓存查询指令;执行可执行命令,包括:执行缓存查询指令,在主应用模块的子应用模块缓存库中查询第一子应用模块的缓存数据;当查询到缓存数据时,调用第三消息模块,并通过第三消息模块将缓存数据发送至第一子应用模块,第三消息模块用于第一子应用模块与主应用模块进行通信。
[0011]在一些可能的实施方式中,在执行缓存查询指令,在主应用模块的子应用模块缓
存库中查询所述第一子应用模块的缓存数据之后,方法还包括:当未查询到缓存数据时,调用第三消息模块,并通过第三消息模块向第一子应用模块发送第三消息,第三消息用于指示第一子应用模块进行缓存初始化。
[0012]在一些可能的实施方式中,可执行命令为缓存指令;执行可执行命令,包括:执行缓存指令,将第一子应用模块的缓存数据存储至主应用模块的子应用模块缓存库中。
[0013]第二方面,本公开提供一种微前端的通信方法,包括:获得第一消息;调用第一消息模块,第一消息模块用于主应用模块与第一子应用模块进行通信;通过第一消息模块向主应用模块发送第一消息。
[0014]在一些可能的实施方式中,在调用第一消息模块之前,方法还包括:当第一子应用模块挂载时,接收主应用模块传递的第一消息模块。
[0015]在一些可能的实施方式中,在调用第一消息模块之前,方法还包括:当第一子应用模块挂载时,向主应用模块发送第三消息模块,第三消息模块用于第一子应用模块与主应用模块进行通信。
[0016]在一些可能的实施方式中,第一消息对应的可执行命令为缓存查询指令,缓存查询指令用于指示主应用模块查询第一子应用模块的缓存数据;方法还包括:通过第三消息模块接收主应用模块发送的缓存数据;加载缓存数据,并根据缓存数据进行页面渲染。
[0017]在一些可能的实施方式中,方法包括:通过第三消息模块接收第一子应用模块发送的第三消息;解析第三消息,得到缓存初始化指令;执行缓存初始化指令,进行缓存初始化;根据初始化后的缓存数据进行页面渲染。
[0018]在一些可能的实施方式中,方法还包括:确定第一子应用模块的应用状态为激活状态;获取第一子应用模块的缓存数据;对缓存数据进行销毁。
[0019]在一些可能的实施方式中,获得第一消息,包括:根据缓存数据,生成第一消息,第一消息用于指示主应用模块缓存缓存数据。
[0020]在一些可能的实施方式中,方法还包括:通过第三消息模块接收主应用模块发送的第四消息,第四消息用于指示关闭第一子应用模块对应的页面;解析第四消息,得到缓存清理指令;执行缓存清理指令,销毁第一子应用模块的缓存数据。
[0021]在一些可能的实施方式中,方法还包括:当第一子应用模块挂载时,将第一子应用模块的应用状态设置为激活状态;或,当第一子应用模块卸载时,将第一子应用模块的应用状态设置为销毁状态。
[0022]第三方面,本公开提供一种微前端的通信装置,该装置可以为终端设备中的芯片或者片上系统,还可以为终端设备中用于实现第一方面及其任一种可能的实施方式所述方法的功能模块。该微前端的通信装置可以实现第一方面及其任一种可能的实施方式所述终端设备所执行的功能,所述功能可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或者多个上述功能相应的模块。该微前端的通信装置包括:接收模块,用于接收第一子应用模块发送的第一消息,第一消息模块用于主应用模块与第一子应用模块进行通信;消息执行模块,用于解析第一消息,得到第一消息对应的可执行命令;执行可执行命令。
[0023]在一些可能的实施方式中,装置还包括:挂载模块,用于挂载第一子应用模块;发送模块,用于将第一消息模块传递给第一子应用模块。
[0024]在一些可能的实施方式中,装置还包括:消息执行模块,用于解析第一消息,确定
第二子应用模块;调用第二子应用模块的第二消息模块,第二消息模块用于第二子应用模块与主应用模块进行通信;发送模块,通过第二消息模块向第二子应用模块发送第一消息。
[0025]在一些可能的实施方式中,挂载模块,还用于挂载第二子应用模块;接收模块,还用于接收第二子应模块传递的第二消息模块;消息执行模块,用于保存第二消息模块。
[0026]在一些可能的实施方式中,主应用模块包括子应用模块消息模块仓库;消息执行模块,还用于将第二消息模块保存至子应用模块消息模块仓库。
[0027]在一些可能的实施方式中,可执行命令为缓存查询指令;消息执行模块,用于执行缓存查询指令,在主应用模块的子应用模块缓存库中查询第一子应用模块的缓存数据;当查询到缓存数据时,调用第三消息模块,并通过第三消息模块将缓存数本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种微前端的通信方法,其特征在于,包括:通过第一消息模块接收第一子应用模块发送的第一消息,所述第一消息模块用于主应用模块与第一子应用模块进行通信;解析所述第一消息,得到所述第一消息对应的可执行命令;执行所述可执行命令。2.根据权利要求1所述的方法,其特征在于,在所述通过第一消息模块接收第一子应用模块发送的第一消息之前,所述方法还包括:挂载所述第一子应用模块;将所述第一消息模块传递给所述第一子应用模块。3.根据权利要求1所述的方法,其特征在于,在所述通过第一消息模块接收第一子应用模块发送的第一消息之后,所述方法还包括:解析所述第一消息,确定第二子应用模块;调用所述第二子应用模块的第二消息模块,所述第二消息模块用于所述第二子应用模块与所述主应用模块进行通信;通过所述第二消息模块向所述第二子应用模块发送所述第一消息。4.根据权利要求3所述的方法,其特征在于,在所述通过第一消息模块接收第一子应用模块发送的第一消息之前,所述方法还包括:挂载所述第二子应用模块;接收所述第二子应用模块传递的所述第二消息模块;保存所述第二消息模块。5.根据权利要求4所述的方法,其特征在于,所述主应用模块包括子应用模块消息模块仓库;所述保存所述第二消息模块,包括:将所述第二消息模块保存至所述子应用模块消息模块仓库。6.根据权利要求1所述的方法,其特征在于,所述可执行命令为缓存查询指令;所述执行所述可执行命令,包括:执行所述缓存查询指令,在所述主应用模块的子应用模块缓存库中查询所述第一子应用模块的缓存数据;当查询到所述缓存数据时,调用第三消息模块,并通过所述第三消息模块将所述缓存数据发送至所述第一子应用模块,所述第三消息模块用于所述第一子应用模块与所述主应用模块进行通信。7.根据权利要求6所述的方法,其特征在于,在所述执行所述缓存查询指令,在所述主应用模块的子应用模块缓存库中查询所述第一子应用模块的缓存数据之后,所述方法还包括:当未查询到所述缓存数据时,调用所述第三消息模块,并通过所述第三消息模块向所述第一子应用模块发送第三消息,所述第三消息用于指示所述第一子应用模块进行缓存初始化。8.根据权利要求1所述的装置,其特征在于,所述可执行命令为缓存指令;所述执行所述可执行命令,包括:
执行所述缓存指令,将所述第一子应用模块的缓存数据存储至所述主应用模块的子应用模块缓存库中。9.一种微前端的通信方法,其特征在于,包括:获得第一消息;调用第一消息模块,所述第一消息模块用于主应用模块与第一子应用模块进行通信;通过所述第一消息模块向主应用模块发送所述第一消息。10.根据权利要求9所述的方法,其特征在于,在所述调用第一消息模块之前,所述方法还包括:当所述第一子应用模块挂载时,接收所述主应用模块传递的所述第一消息模...

【专利技术属性】
技术研发人员:底剑南李伟荣尹继旺刘虹邑
申请(专利权)人:北京快乐茄信息技术有限公司
类型:发明
国别省市:

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

1