CN114679491A - 微前端服务应用方法、装置、存储介质及电子设备 - Google Patents
微前端服务应用方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN114679491A CN114679491A CN202011573414.5A CN202011573414A CN114679491A CN 114679491 A CN114679491 A CN 114679491A CN 202011573414 A CN202011573414 A CN 202011573414A CN 114679491 A CN114679491 A CN 114679491A
- Authority
- CN
- China
- Prior art keywords
- service
- layer unit
- module
- application layer
- service module
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 230000003068 static effect Effects 0.000 claims description 21
- 230000006870 function Effects 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 17
- 230000003993 interaction Effects 0.000 claims description 11
- 238000013461 design Methods 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 7
- 230000004044 response Effects 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 4
- 238000004088 simulation Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
Abstract
本申请提供一种微前端服务应用方法、装置、存储介质及电子设备。本申请实施例提供的微前端服务装置,通过在子应用层单元中设置承载不同服务内容的业务模块,并在主应用层单元中配置中心注册表,从而使得主应用层单元通过中心注册表将访问指令转发至子应用层单元中与访问指令对应的目标业务模块中,以将目标业务模块的数据文件加载至主应用层单元,从而实现在主应用层单元可以对子应用层单元中基于不同框架所开发的业务模块进行兼容,以使得该微前端服务装置可以进行前端业务的解耦,并且还可以通过配置子应用层单元中的业务模块来对具体的业务需求进行适应性的部署,从而提高所开发项目的可扩展性。
Description
技术领域
本申请涉及数据处理技术领域,尤其涉及一种微前端服务应用方法、装置、存储介质及电子设备。
背景技术
近些年来,随着前端领域相关技术的快速发展,前端的工程化程度急速提高,但随着项目内容增多,前端工程体量也随之增长,带来的维护问题越来越突出,其中,此处前端为面向Web用户的那一层,通常包含路由控制,数据聚合、模板渲染、内容分发等几个方面。
随着企业业务的发展,以及时间的推移,各个项目通用公共部分会变得越来越多,使得由独立项目团队所开发的前端层越来越难以维护。当前,Web前后端分离技术通常使用单一框架,例如,采用模型-视图-视图模型(Model View View Model,MVVM)将其中的视图的状态和行为抽象化,从而让我们将视图和业务逻辑分开。
但是,采用上述单一框架的方式,会导致基于同一框架所开发的项目只能支持该特定框架,而无法支持其他框架,进而会影响项目的可扩展性。
发明内容
本申请实施例提供一种微前端服务应用方法、装置、存储介质及电子设备,以解决当前采用单一框架的方式,对于多前端框架无法实现技术兼容的技术问题。
第一方面,本申请实施例提供一种微前端服务装置,包括:主应用层单元以及子应用层单元;
所述子应用层单元中设置有至少一个业务模块,所述业务模块用于承载对应业务的服务内容;
所述主应用层单元中配置有中心注册表,所述主应用层单元通过所述中心注册表将访问指令转发至所述子应用层单元中与所述访问指令对应的目标业务模块中,以将所述目标业务模块的数据文件加载至所述主应用单元。
在一种可能的设计中,所述主应用层单元中设置有子应用管理模块;
其中,所述子应用管理模块用于利用所述中心注册表将所述访问指令匹配至所述目标业务模块,并对所述目标业务模块的静态文件进行加载,所述数据文件包括所述静态文件。
在一种可能的设计中,所述的微前端服务装置,还包括:用户接入层单元;
其中,所述用户接入层单元用于接收所述访问指令,以及用于展示所述主应用层单元加载所述静态文件后的页面。
在一种可能的设计中,所述主应用层单元中设置有至少一个公共服务模块,所述公共服务模块用于为所述业务模块提供公共能力,所述公共能力用于支持相应的用户交互操作。
在一种可能的设计中,所述公共服务模块包括:账户管理模块、权限管理模块以及菜单管理模块中的至少一种。
在一种可能的设计中,所述的微前端服务装置,还包括:基础服务层单元;
其中,所述基础服务层单元中配置有基础服务模块,所述基础服务模块用于为所述业务模块提供基础能力,所述基础能力用于支持所述业务模块的运行管理。
在一种可能的设计中,所述的微前端服务装置,还包括:后端连接接口;
其中,所述后端连接接口用于向各个业务模块所对应的后台服务器请求所述数据文件。
第二方面,本申请实施例提供一种微前端服务应用方法,应用于微前端服务装置,所述微前端服务装置包括:主应用层单元以及子应用层单元,所述子应用层单元中设置有至少一个业务模块,所述业务模块用于承载对应业务的服务内容;所述方法,包括:
在所述主应用层单元获取到访问指令之后,利用所述主应用层单元中的中心注册表将所述访问指令转发至所述子应用层单元中对应的目标业务模块中;
加载所述目标业务模块的数据文件至所述主应用单元。
在一种可能的设计中,所述利用所述主应用层单元中的中心注册表将所述访问指令转发至所述子应用层单元中对应的目标业务模块中,包括:
通过所述主应用层单元中的子应用管理模块,并利用所述中心注册表将所述访问指令匹配至所述目标业务模块,以对所述目标业务模块的静态文件进行加载。
在一种可能的设计中,在所述加载所述目标业务模块的数据文件至所述主应用之后,还包括:
在用户接入层单元中展示所述主应用加载所述静态文件后的页面。
在一种可能的设计中,所述的微前端服务应用方法,还包括:
响应于用户交互操作,在所述主应用层单元中调用目标公共服务模块,其中,所述目标公共服务模块为所述主应用层单元中与所述用户交互操作相对应的公共服务模块,所述公共服务模块用于为所述业务模块提供公共能力,所述公共能力用于支持相应的用户交互操作。
在一种可能的设计中,所述公共服务模块包括:账户管理模块、权限管理模块以及菜单管理模块中的至少一种。
在一种可能的设计中,所述的微前端服务应用方法,还包括:
响应于业务管理指令,在所述主应用层单元中调用目标基础服务模块,其中,所述基础服务模块为所述主应用层单元中与所述业务管理指令相对应的基础服务模块,所述基础服务模块用于为所述业务模块提供基础能力,所述基础能力用于支持所述业务模块的运行管理。
在一种可能的设计中,所述的微前端服务应用方法,还包括:
响应于所述访问指令,通过后端连接接口向各个业务模块所对应的后台服务器请求所述数据文件。
第三方面,本申请实施例还提供一种电子设备,包括:
处理器;以及,
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行第一方面中任意一种微前端服务装置中各单元的功能。
第四方面,本申请实施例还提供一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面中任意一种微前端服务装置中各单元的功能。
第五方面,本申请实施例还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面中任意一种微前端服务装置中各单元的功能。
本申请实施例提供的一种微前端服务应用方法、装置、存储介质及电子设备,通过在子应用层单元中设置承载不同服务内容的业务模块,并在主应用层单元中配置中心注册表,从而使得主应用层单元通过中心注册表将访问指令转发至子应用层单元中与访问指令对应的目标业务模块中,以将目标业务模块的数据文件加载至主应用单元,从而实现主应用单元可以对子应用层单元中基于不同框架所开发的业务模块进行兼容,以使得该微前端服务装置可以进行前端业务的解耦,并且还可以通过配置子应用层单元中的业务模块来对具体的业务需求进行适应性的部署,从而提高所开发项目的可扩展性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请根据一示例实施例示出的微前端服务装置的装置示意图;
图2是本申请根据一示例实施例示出的微前端服务应用方法的流程示意图;
图3是本申请根据另一示例实施例示出的微前端服务应用方法的流程示意图;
图4是本申请根据一示例实施例示出的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
随着企业业务的发展,以及时间的推移,各个项目通用公共部分会变得越来越多,使得由独立项目团队所开发的前端层越来越难以维护。通常来讲,一个大型业务系统(例如:金融业务系统、教育业务系统以及娱乐业务系统等)会包含多个业务模块,每个业务模块由相应的后端服务支撑,在正常开发过程中,每个后端服务对应着一个独立的前端,同时,由于技术选型、领导决策、历史遗留等原因,各个前端所使用的技术栈可能新旧不一、装置各异。如果需要保持装置的一致性,则采用的Web前后端分离技术来进行实现,通常使用单一框架,例如,采用MVVM装置将其中的视图的状态和行为抽象化,从而让我们将视图和业务逻辑分开。但是,采用单一框架的方式,会导致基于同一框架所开发的项目对于某种特定前端框架依赖度较高,当平台中需要其他前端框架支持时,便无法在技术兼容性做到很好保障。
针对上述技术问题,本申请的技术构思,在于通过在子应用层单元中设置承载不同服务内容的业务模块,并在主应用层单元中配置中心注册表,从而使得主应用层单元通过中心注册表将访问指令转发至子应用层单元中与访问指令对应的目标业务模块中,以将目标业务模块的数据文件加载至主应用单元,从而实现在主应用单元可以对子应用层单元中基于不同框架所开发的业务模块进行兼容,以使得该微前端服务装置可以进行前端业务的解耦,并且还可以通过配置子应用层单元中的业务模块来对具体的业务需求进行适应性的部署。
图1是本申请根据一示例实施例示出的微前端服务装置的装置示意图。如图1所示,本申请中所提供的微前端服务装置,包括:主应用层单元以及子应用层单元。
其中,在子应用层单元中设置有至少一个业务模块,业务模块用于承载对应业务的服务内容。例如,在金融业务系统中,子应用层单元中可以设置有“基金”、“投后”、“图谱”、“策略”、“投研”以及“外部项目”等业务模块,每个业务模块用于承载对应的金融业务内容及功能。可以“基金”作为其中一个业务模块进行举例说明,该业务模块可以是用于展示基金业务相关的内容和服务。
此外,在主应用层单元中配置有中心注册表,在主应用层单元中可以通过中心注册表将访问指令转发至子应用层单元中与访问指令对应的目标业务模块中,以将目标业务模块的数据文件加载至主应用。值得说明的,在一种可能的设计中,对于上述主应用层单元与子应用层单元之间的通信,可以采用eventemitter3的方式进行实现。
其中,上述的中心注册表可以是用于建立主应用层单元与子应用层单元之间的地址访问关系,当主应用层单元接收到相关的访问指令时,可以通过中心注册表中的映射关系,转发至子应用层单元中对应的业务模块。例如,在主应用层单元中获取到的访问指令是用于访问“基金”的相关业务或服务,则可以是通过中心注册表将访问指令转发至子应用层单元中的“基金”模块,从而将“基金”模块中的数据文件加载至主应用,以在主应用中进行展示。
可选的,可以是通过import-html-entry来将目标业务模块的数据文件加载至主应用。具体的,可以是通过读取目标业务模块的html中的js\css等entry,然后,注入到主应用的HTML上进行实现。
其中,对于上述的中心注册表可以通过Single-SPA框架中的方法进行实现。从而可以兼容各种技术栈,即在同一个页面中可使用多种技术(例如:React,Vue,AngularJS,Angular,Ember),并且不需要重载页面。并且,还无需重构现有代码,即如果想选用新的技术框架编写代码,现有项目中的代码无需重构。此外,每个独立模块的代码可做到按需加载,不浪费额外资源。并且,每个独立模块,独立开发,独立运行,可以配置最优的访问权限,还能将功能拆分到最小,且权限可按功能来划分。从而通过Single-SPA以及其中的中心注册表将多个不同技术的项目融合一起。
在本实施例中,通过在子应用层单元中设置承载不同服务内容的业务模块,并在主应用层单元中配置中心注册表,从而使得主应用层单元通过中心注册表将访问指令转发至子应用层单元中与访问指令对应的目标业务模块中,以将目标业务模块的数据文件加载至主应用,从而实现在主应用可以对子应用层单元中基于不同框架所开发的业务模块进行兼容,以使得该微前端服务装置可以进行前端业务的解耦,并且还可以通过配置子应用层单元中的业务模块来对具体的业务需求进行适应性的部署。
继续参照图1,在上述实施例的基础上,主应用层单元中还可以设置有子应用管理模块,其中,子应用管理模块用于利用中心注册表将访问指令匹配至目标业务模块,并对目标业务模块的静态文件进行加载,上述的数据文件包括静态文件。值得说明的,子应用层单元中的业务模块种类可以根据实际需求进行构建,如果需要在子应用层单元中添加新的业务模块,则可以通过在子应用管理模块中注册该业务模块的方式进行实现。其中,对于静态文件的加载,可以采用Systemjs工具,是一个通用Javascript模块加载器,可以在浏览器和NodeJS中加载ES6模块AMD CommonJS和全局脚本。
此外,主应用层单元中还可以设置有至少一个公共服务模块,公共服务模块用于为业务模块提供公共能力,公共能力用于支持相应的用户交互操作。参照图1所示,公共服务模块可以包括:账户管理模块、权限管理模块以及菜单管理模块中的至少一种。值得说明的,可以选取各个应用中常用的一些功能模块作为公共服务模块,例如,在各个应用中,通常需要进行账户管理,因此,可以通过在主应用单元中设置账户管理模块的方式,让其成为整个装置的公共服务模块,以避免在各个业务模块中在单独重复地设置该功能模块,从而有效地简化系统。
在上述实施例的基础上,微前端服务装置,还可以包括:基础服务层单元。其中,基础服务层单元中配置有基础服务模块,基础服务模块用于为业务模块提供基础能力,基础能力用于支持业务模块的运行管理。继续参照图1,上述的基础服务模块可以包括:监控模块、分发模块、埋点模块以及模拟模块中的至少一种。值得说明的,基础服务模块用于为业务模块提供运行管理中的基础能力,即可以对业务模块运行进行监测、业务分发、埋点管理以及模拟数据等操作。
继续参照图1,本实施例提供的微前端服务装置,还可以包括:后端连接接口,对于后端连接接口,可以采用JEN nginx。其中,后端连接接口用于向各个业务模块所对应的后台服务器请求数据文件。例如,响应于对“基金”业务模块的访问指令,从基金后台服务器中请求响应的数据文件,以用于前端的展示,例如,浏览器或者微信小程序的页面方式进行展示。
图2是本申请根据一示例实施例示出的微前端服务应用方法的流程示意图。如图2所示,本实施例提供的微前端服务应用方法,包括:
步骤101、在主应用层单元获取到访问指令。
本实施例提供的微前端服务应用方法,应用于上述任意实施例提供的微前端服务装置。该前端服务装置包括:主应用层单元以及子应用层单元。
其中,在子应用层单元中设置有至少一个业务模块,业务模块用于承载对应业务的服务内容。例如,在金融业务系统中,子应用层单元中可以设置有“基金”、“投后”、“图谱”、“策略”、“投研”以及“外部项目”等业务模块,每个业务模块用于承载对应的金融业务内容及功能。可以“基金”作为其中一个业务模块进行举例说明,该业务模块可以是用于展示基金业务相关的内容和服务。
在用户需要对相关的目标业务模块进行访问时,可以通过在用户接入层单元输入相应的访问指令,从而使得主应用层单元获取到访问指令。
步骤102、利用主应用层单元中的中心注册表将访问指令转发至子应用层单元中对应的目标业务模块中。
在主应用层单元中配置有中心注册表,在主应用层单元中可以通过中心注册表将访问指令转发至子应用层单元中与访问指令对应的目标业务模块中,以将目标业务模块的数据文件加载至主应用单元。值得说明的,在一种可能的设计中,对于上述主应用层单元与子应用层单元之间的通信,可以采用eventemitter3的方式进行实现。
步骤103、加载目标业务模块的数据文件至主应用。
其中,上述的中心注册表可以是用于建立主应用层单元与子应用层单元之间的地址访问关系,当主应用层单元接收到相关的访问指令时,可以通过中心注册表中的映射关系,转发至子应用层单元中对应的业务模块。例如,在主应用层单元中获取到的访问指令是用于访问“基金”的相关业务或服务,则可以是通过中心注册表将访问指令转发至子应用层单元中的“基金”模块,从而将“基金”模块中的数据文件加载至主应用,以在主应用中进行展示。
可选的,可以是通过import-html-entry来将目标业务模块的数据文件加载至主应用。具体的,可以是通过读取目标业务模块的html中的js\css等entry,然后,注入到主应用的HTML上进行实现。
其中,对于上述的中心注册表可以通过Single-SPA框架中的方法进行实现。从而可以兼容各种技术栈,即在同一个页面中可使用多种技术(例如:React,Vue,AngularJS,Angular,Ember),并且不需要重载页面。并且,还无需重构现有代码,即如果想选用新的技术框架编写代码,现有项目中的代码无需重构。此外,每个独立模块的代码可做到按需加载,不浪费额外资源。并且,每个独立模块,独立开发,独立运行,可以配置最优的访问权限,还能将功能拆分到最小,且权限可按功能来划分。从而通过Single-SPA以及其中的中心注册表将多个不同技术的项目融合一起。
在本实施例中,通过在子应用层单元中设置承载不同服务内容的业务模块,并在主应用层单元中配置中心注册表,从而使得主应用层单元通过中心注册表将访问指令转发至子应用层单元中与访问指令对应的目标业务模块中,以将目标业务模块的数据文件加载至主应用单元,从而实现在主应用单元可以对子应用层单元中基于不同框架所开发的业务模块进行兼容,以使得该微前端服务装置可以进行前端业务的解耦,并且还可以通过配置子应用层单元中的业务模块来对具体的业务需求进行适应性的部署,从而提高所开发项目的可扩展性。
图3是本申请根据另一示例实施例示出的微前端服务应用方法的流程示意图。如图3所示,本实施例提供的微前端服务应用方法,包括:
步骤201、在主应用层单元获取到访问指令。
本实施例提供的微前端服务应用方法,应用于上述任意实施例提供的微前端服务装置。该前端服务装置包括:主应用层单元以及子应用层单元。
其中,在子应用层单元中设置有至少一个业务模块,业务模块用于承载对应业务的服务内容。例如,在金融业务系统中,子应用层单元中可以设置有“基金”、“投后”、“图谱”、“策略”、“投研”以及“外部项目”等业务模块,每个业务模块用于承载对应的金融业务内容及功能。可以“基金”作为其中一个业务模块进行举例说明,该业务模块可以是用于展示基金业务相关的内容和服务。
在用户需要对相关的目标业务模块进行访问时,可以通过在用户接入层单元输入相应的访问指令,从而使得主应用层单元获取到访问指令。
步骤202、通过主应用层单元中的子应用管理模块,并利用中心注册表将访问指令匹配至所述目标业务模块,以对目标业务模块的静态文件进行加载。
在上述实施例的基础上,主应用层单元中还可以设置有子应用管理模块,其中,子应用管理模块用于利用中心注册表将访问指令匹配至目标业务模块,并对目标业务模块的静态文件进行加载,上述的数据文件包括静态文件。值得说明的,子应用层单元中的业务模块种类可以根据实际需求进行构建,如果需要在子应用层单元中添加新的业务模块,则可以通过在子应用管理模块中注册该业务模块的方式进行实现。其中,对于静态文件的加载,可以采用Systemjs工具,是一个通用Javascript模块加载器,可以在浏览器和NodeJS中加载ES6模块AMD CommonJS和全局脚本。
步骤203、加载目标业务模块的数据文件至主应用。
其中,上述的中心注册表可以是用于建立主应用层单元与子应用层单元之间的地址访问关系,当主应用层单元接收到相关的访问指令时,可以通过中心注册表中的映射关系,转发至子应用层单元中对应的业务模块。例如,在主应用层单元中获取到的访问指令是用于访问“基金”的相关业务或服务,则可以是通过中心注册表将访问指令转发至子应用层单元中的“基金”模块,从而将“基金”模块中的数据文件加载至主应用,以在主应用中进行展示。
可选的,可以是通过import-html-entry来将目标业务模块的数据文件加载至主应用。具体的,可以是通过读取目标业务模块的html中的js\css等entry,然后,注入到主应用的HTML上进行实现。
其中,对于上述的中心注册表可以通过Single-SPA框架中的方法进行实现。从而可以兼容各种技术栈,即在同一个页面中可使用多种技术(例如:React,Vue,AngularJS,Angular,Ember),并且不需要重载页面。并且,还无需重构现有代码,即如果想选用新的技术框架编写代码,现有项目中的代码无需重构。此外,每个独立模块的代码可做到按需加载,不浪费额外资源。并且,每个独立模块,独立开发,独立运行,可以配置最优的访问权限,还能将功能拆分到最小,且权限可按功能来划分。从而通过Single-SPA以及其中的中心注册表将多个不同技术的项目融合一起。
步骤204、在用户接入层单元中展示主应用加载静态文件后的页面。
在本步骤中,可以是通过后端连接接口,向各个业务模块所对应的后台服务器请求数据文件。例如,响应于对“基金”业务模块的访问指令,从基金后台服务器中请求响应的静态文件,并将该静态文件加载至主应用层单元中,以在用户接入层单元中展示主应用层单元加载静态文件后的页面,例如,浏览器或者微信小程序的页面方式进行展示。
此外,主应用层单元中还可以设置有至少一个公共服务模块,公共服务模块用于为业务模块提供公共能力,公共能力用于支持相应的用户交互操作。参照图1所示,公共服务模块可以包括:账户管理模块、权限管理模块以及菜单管理模块中的至少一种。值得说明的,可以选取各个应用中常用的一些功能模块作为公共服务模块,例如,在各个应用中,通常需要进行账户管理,因此,可以通过在主应用中设置账户管理模块的方式,让其成为整个装置的公共服务模块,以避免在各个业务模块中在单独重复地设置该功能模块,从而有效地简化系统。可以响应于用户交互操作,在主应用层单元中调用目标公共服务模块,其中,目标公共服务模块为主应用层单元中与用户交互操作相对应的公共服务模块,公共服务模块用于为业务模块提供公共能力,公共能力用于支持相应的用户交互操作。
并且,微前端服务装置,还可以包括:基础服务层单元。其中,基础服务层单元中配置有基础服务模块,基础服务模块用于为业务模块提供基础能力,基础能力用于支持业务模块的运行管理。继续参照图1,上述的基础服务模块可以包括:监控模块、分发模块、埋点模块以及模拟模块中的至少一种。值得说明的,基础服务模块用于为业务模块提供运行管理中的基础能力,即可以对业务模块运行进行监测、业务分发、埋点管理以及模拟数据等操作。响应于业务管理指令,可以在主应用层单元中调用目标基础服务模块,其中,基础服务模块为主应用层单元中与业务管理指令相对应的基础服务模块。
图4是本申请根据一示例实施例示出的电子设备的结构示意图。如图4所示,本实施例提供的一种电子设备300,包括:
处理器301;以及,
存储器302,用于存储所述处理器的可执行指令,该存储器还可以是flash(闪存);
其中,所述处理器301配置为经由执行所述可执行指令来执行上述方法中的各个步骤。具体可以参见微前端服务装置中各个单元功能的相关描述。
可选地,存储器302既可以是独立的,也可以跟处理器301集成在一起。
当所述存储器302是独立于处理器301之外的器件时,所述电子设备300,还可以包括:
总线303,用于连接所述处理器301以及所述存储器302。
本实施例还提供一种可读存储介质,可读存储介质中存储有计算机程序,当电子设备的至少一个处理器执行该计算机程序时,电子设备执行上述的各种实施方式提供的微前端服务装置中各个单元功能。
本实施例还提供一种程序产品,该程序产品包括计算机程序,该计算机程序存储在可读存储介质中。电子设备的至少一个处理器可以从可读存储介质读取该计算机程序,至少一个处理器执行该计算机程序使得电子设备实施上述的各种实施方式提供的微前端服务装置中各个单元功能。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或对其中部分或全部技术特征进行等同替换;而这些修改或替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (17)
1.一种微前端服务装置,其特征在于,包括:主应用层单元以及子应用层单元;
所述子应用层单元中设置有至少一个业务模块,所述业务模块用于承载对应业务的服务内容;
所述主应用层单元中配置有中心注册表,所述主应用层单元通过所述中心注册表将访问指令转发至所述子应用层单元中与所述访问指令对应的目标业务模块中,以将所述目标业务模块的数据文件加载至所述主应用单元。
2.根据权利要求1所述的微前端服务装置,其特征在于,所述主应用层单元中设置有子应用管理模块;
其中,所述子应用管理模块用于利用所述中心注册表将所述访问指令匹配至所述目标业务模块,并对所述目标业务模块的静态文件进行加载,所述数据文件包括所述静态文件。
3.根据权利要求2所述的微前端服务装置,其特征在于,还包括:用户接入层单元;
其中,所述用户接入层单元用于接收所述访问指令,以及用于展示所述主应用单元加载所述静态文件后的页面。
4.根据权利要求1-3中任意一项所述的微前端服务装置,其特征在于,所述主应用层单元中设置有至少一个公共服务模块,所述公共服务模块用于为所述业务模块提供公共能力,所述公共能力用于支持相应的用户交互操作。
5.根据权利要求4所述的微前端服务装置,其特征在于,所述公共服务模块包括:账户管理模块、权限管理模块以及菜单管理模块中的至少一种。
6.根据权利要求1-3中任意一项所述的微前端服务装置,其特征在于,还包括:基础服务层单元;
其中,所述基础服务层单元中配置有基础服务模块,所述基础服务模块用于为所述业务模块提供基础能力,所述基础能力用于支持所述业务模块的运行管理。
7.根据权利要求1-3中任意一项所述的微前端服务装置,其特征在于,还包括:后端连接接口;
其中,所述后端连接接口用于向各个业务模块所对应的后台服务器请求所述数据文件。
8.一种微前端服务应用方法,其特征在于,应用于微前端服务装置,所述微前端服务装置包括:主应用层单元以及子应用层单元,所述子应用层单元中设置有至少一个业务模块,所述业务模块用于承载对应业务的服务内容;所述方法,包括:
在所述主应用层单元获取到访问指令之后,利用所述主应用层单元中的中心注册表将所述访问指令转发至所述子应用层单元中对应的目标业务模块中;
加载所述目标业务模块的数据文件至所述主应用单元。
9.根据权利要求8所述的微前端服务应用方法,其特征在于,所述利用所述主应用层单元中的中心注册表将所述访问指令转发至所述子应用层单元中对应的目标业务模块中,包括:
通过所述主应用层单元中的子应用管理模块,并利用所述中心注册表将所述访问指令匹配至所述目标业务模块,以对所述目标业务模块的静态文件进行加载。
10.根据权利要求9所述的微前端服务应用方法,其特征在于,在所述加载所述目标业务模块的数据文件至所述主应用单元之后,还包括:
在用户接入层单元中展示所述主应用单元加载所述静态文件后的页面。
11.根据权利要求8-10中任意一项所述的微前端服务应用方法,其特征在于,还包括:
响应于用户交互操作,在所述主应用层单元中调用目标公共服务模块,其中,所述目标公共服务模块为所述主应用层单元中与所述用户交互操作相对应的公共服务模块,所述公共服务模块用于为所述业务模块提供公共能力,所述公共能力用于支持相应的用户交互操作。
12.根据权利要求11所述的微前端服务应用方法,其特征在于,所述公共服务模块包括:账户管理模块、权限管理模块以及菜单管理模块中的至少一种。
13.根据权利要求8-10中任意一项所述的微前端服务应用方法,其特征在于,还包括:
响应于业务管理指令,在所述主应用层单元中调用基础服务模块,其中,所述基础服务模块为所述主应用层单元中与所述业务管理指令相对应的基础服务模块,所述基础服务模块用于为所述业务模块提供基础能力,所述基础能力用于支持所述业务模块的运行管理。
14.根据权利要求8-10中任意一项所述的微前端服务应用方法,其特征在于,还包括:
响应于所述访问指令,通过后端连接接口向各个业务模块所对应的后台服务器请求所述数据文件。
15.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的计算机程序;
其中,所述处理器被配置为通过执行所述计算机程序来实现权利要求1至7任一项所述的微前端服务装置中各单元的功能。
16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求8至14任一项所述的微前端服务应用方法。
17.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求8至14任一项所述的微前端服务应用方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011573414.5A CN114679491A (zh) | 2020-12-24 | 2020-12-24 | 微前端服务应用方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011573414.5A CN114679491A (zh) | 2020-12-24 | 2020-12-24 | 微前端服务应用方法、装置、存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114679491A true CN114679491A (zh) | 2022-06-28 |
Family
ID=82070361
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011573414.5A Pending CN114679491A (zh) | 2020-12-24 | 2020-12-24 | 微前端服务应用方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114679491A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115857935A (zh) * | 2023-02-15 | 2023-03-28 | 北京微吼时代科技有限公司 | 独立于框架的前端开发方法及装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109189386A (zh) * | 2018-07-12 | 2019-01-11 | 新华三云计算技术有限公司 | 一种基于微服务的应用访问方法及装置 |
CN110708368A (zh) * | 2019-09-25 | 2020-01-17 | 北京计算机技术及应用研究所 | 一种基于路由分发的微前端系统和方法 |
CN111045652A (zh) * | 2019-12-13 | 2020-04-21 | 中国南方电网有限责任公司 | 配电网开发及服务系统 |
CN111459503A (zh) * | 2020-03-30 | 2020-07-28 | 北京顺达同行科技有限公司 | web前端项目部署方法、装置、服务器及存储介质 |
CN111666585A (zh) * | 2020-04-16 | 2020-09-15 | 北京百度网讯科技有限公司 | 子应用访问的方法、装置、电子设备以及可读存储介质 |
CN111737032A (zh) * | 2020-07-27 | 2020-10-02 | 腾讯科技(深圳)有限公司 | 一种基于微内核系统的子程序运行方法、装置和电子设备 |
WO2020211222A1 (zh) * | 2019-04-15 | 2020-10-22 | 厦门市美亚柏科信息股份有限公司 | 基于数据服务平台提供微服务的方法、装置、存储介质 |
CN112114784A (zh) * | 2020-09-21 | 2020-12-22 | 广东电网有限责任公司电力科学研究院 | 一种基于Single-Spa的前端微服务化系统 |
-
2020
- 2020-12-24 CN CN202011573414.5A patent/CN114679491A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109189386A (zh) * | 2018-07-12 | 2019-01-11 | 新华三云计算技术有限公司 | 一种基于微服务的应用访问方法及装置 |
WO2020211222A1 (zh) * | 2019-04-15 | 2020-10-22 | 厦门市美亚柏科信息股份有限公司 | 基于数据服务平台提供微服务的方法、装置、存储介质 |
CN110708368A (zh) * | 2019-09-25 | 2020-01-17 | 北京计算机技术及应用研究所 | 一种基于路由分发的微前端系统和方法 |
CN111045652A (zh) * | 2019-12-13 | 2020-04-21 | 中国南方电网有限责任公司 | 配电网开发及服务系统 |
CN111459503A (zh) * | 2020-03-30 | 2020-07-28 | 北京顺达同行科技有限公司 | web前端项目部署方法、装置、服务器及存储介质 |
CN111666585A (zh) * | 2020-04-16 | 2020-09-15 | 北京百度网讯科技有限公司 | 子应用访问的方法、装置、电子设备以及可读存储介质 |
CN111737032A (zh) * | 2020-07-27 | 2020-10-02 | 腾讯科技(深圳)有限公司 | 一种基于微内核系统的子程序运行方法、装置和电子设备 |
CN112114784A (zh) * | 2020-09-21 | 2020-12-22 | 广东电网有限责任公司电力科学研究院 | 一种基于Single-Spa的前端微服务化系统 |
Non-Patent Citations (2)
Title |
---|
SPOONYSNAIL: "微前端:SingleSpa实践小结", Retrieved from the Internet <URL:https://segmentfault.com/a/1190000023534314> * |
一树梨花: "微前端(Single-spa)框架在Vue项目中落地", Retrieved from the Internet <URL:https://blog.csdn.net/qq_44746132/article/details/106040326> * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115857935A (zh) * | 2023-02-15 | 2023-03-28 | 北京微吼时代科技有限公司 | 独立于框架的前端开发方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9959198B1 (en) | Simulated testing of API | |
CN107515776A (zh) | 业务不间断升级方法、待升级节点和可读存储介质 | |
CN107066631A (zh) | 页面的显示方法、装置及电子设备 | |
WO2011130651A1 (en) | Cross-platform application framework | |
CN110442327B (zh) | 一种应用程序构建方法、装置、服务器 | |
CN111538659B (zh) | 业务场景的接口测试方法、系统、电子设备和存储介质 | |
US11741002B2 (en) | Test automation systems and methods using logical identifiers | |
CN104704468A (zh) | Web应用程序的跨系统安装 | |
CN111708528A (zh) | 一种小程序的生成方法、装置、设备及存储介质 | |
CN104067276A (zh) | 客户机侧最小下载和模拟的页面导航特征 | |
US10540150B2 (en) | Composable context menus | |
CN112765023A (zh) | 测试用例生成方法、装置 | |
CN106850650B (zh) | 用于游戏客户端访问数据的方法及客户端游戏系统 | |
CN102135895A (zh) | 系统升级方法及系统 | |
CN110083366B (zh) | 应用运行环境的生成方法、装置、计算设备及存储介质 | |
CN114679491A (zh) | 微前端服务应用方法、装置、存储介质及电子设备 | |
CN114048415A (zh) | 表单生成方法及装置、电子设备和计算机可读存储介质 | |
CN113886741A (zh) | 用于对公式进行排版的方法及其相关产品 | |
CN114662022A (zh) | 一种应用隔离方法及装置 | |
CN110599112B (zh) | 一种网络页面开发、维护方法和装置 | |
CN117724803A (zh) | 云服务部署方法、装置和平台 | |
CN110908644A (zh) | 状态节点的配置方法、装置、计算机设备和存储介质 | |
CN115292169A (zh) | 一种ui自动化测试方法及系统 | |
KR101553539B1 (ko) | 동적 링크 제공 방법 및 이를 수행하는 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 | |
CN114296704A (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 |