本发明涉及计算机,具体涉及一种层级更新系统及方法。
背景技术:
1、微前端作为一种现代软件架构模式,通过将大型前端应用拆分为多个小型、独立可部署的微应用,提高了开发效率和部署灵活性。
2、目前,微前端使用自定义事件、全局状态管理(如redux、vuex等)、或专门的微前端通信库(如single-spa、module federation等),以实现微应用间的数据共享和事件触发。
3、然而,不同微应用采用不同的技术栈,不同的组件库,这导致样式管理和一致性控制变得异常复杂,子应用页面和主应用的层级存在互相覆盖影响问题。
技术实现思路
1、有鉴于此,本发明提供了一种层级更新系统及方法,以解决不同微应用采用不同的技术栈,不同的组件库,这导致样式管理和一致性控制变得异常复杂,子应用页面和主应用的层级存在互相覆盖影响的问题。
2、第一方面,本发明提供了一种层级更新系统,该系统包括:微前端模块、层级管理模块和第一协作模块;微前端模块,用于响应于目标对象的第一加载指令,调起第一页面层;检测第一页面层类型和第一协作模块中配置的第一规则是否相对应,若第一页面层的类型和第一协作模块中配置的第一规则相对应,将第一页面层的层级发送至第一协作模块;第一协作模块,用于接收第一页面层的层级,并按照预设的规则将初始层级转化为第一页面层的层级,将第一页面层的层级发送至层级管理模块;层级管理模块,用于接收第一页面层的层级,并将初始层级更新为第一页面层的层级;第一协作模块,还用于在初始层级更新为第一页面层的层级之后,将第一页面层的层级覆盖初始层级。
3、本实施例提供的层级更新系统,每个微应用在加载时,都会通过第一协作模块检查其页面层的类型,并与预设的规则进行匹配。通过这种方式,可以确保每个微应用的页面层都被正确地识别和分类,为后续的层级管理打下基础。当第一页面层的类型与第一协作模块中配置的第一规则相对应时,该模块会将其层级信息发送到层级管理模块。层级管理模块根据接收到的层级信息,动态地调整和维护一个全局的层级结构。这意味着,如果某个微应用的页面层需要更高的显示优先级(即更高的层级),它可以被相应地调整,以避免被其他页面层覆盖。通过上述的层级管理机制,不同微应用之间的页面层冲突可以被最小化。因为每个页面层的显示优先级都是根据预设的规则和当前的全局层级结构来决定的,所以它们之间的相互覆盖问题可以得到有效控制。
4、在一个可选的实施方式中,第一协作模块进一步用于对第一页面层注册实例,在将第一页面层的层级覆盖初始层级之后,基于实例对第一页面层进行处理。
5、本实施例提供的层级更新系统,通过注册实例,每个第一页面层都被赋予了一个明确的身份和管理对象。这使得开发者可以更加精确地控制和管理第一页面层的行为和样式,减少了因匿名或无序管理而导致的混乱和错误。并且,由于每个弹出层都有对应的实例,系统可以根据实际需求动态地调整弹出层的显示层级、大小、位置等属性,而无需担心对其他弹出层的影响。
6、在一个可选的实施方式中,系统还包括:第二协作模块;微前端模块进一步用于若第一页面层的类型和第一协作模块中配置的规则不对应,将第一页面层的类型发送至第二协作模块;第二协作模块,用于基于第一页面层的类型,从预设的规则库中确定与第一页面层的类型相匹配的目标规则信息,并将目标规则信息发送至层级管理模块;层级管理模块,用于根据目标规则并初始层级转化为第一页面层的层级,并将层级发送至第二协作模块;第二协作模块进一步用于将初始化层级更新为第一页面层的层级。
7、本实施例提供的层级更新系统,当第一页面层的类型与第一协作模块中预定义的规则不对应时,系统能够智能地将类型信息转发给第二协作模块。第二协作模块基于预设的规则库进行匹配,找到最适合的目标规则信息。这种设计使得系统能够处理更多样化的页面层类型,提高了系统的灵活性和可扩展性。
8、在一个可选的实施方式中,系统还包括:第二协作模块;微前端模块,用于响应于目标对象的第二加载指令,调起第二页面层,检测第二页面层类型和第一协作模块中配置的规则是否相对应,若第二页面层类型和第一协作模块中配置的规则不对应,将第二页面层的层级发送至第二协作模块;第二协作模块,用于接收第二页面层的层级,并检测第二页面层的层级和第一页面层的层级是否相同;若第二页面层的层级和第一页面层的层级不相同,从预设的规则库中匹配与第二页面层的类型相匹配的第二规则;层级管理模块,用于根据与第二页面层的类型相匹配的第二规则将第一页面层的层级转化为第二页面层的层级;第二协作模块,用于将第二页面层的层级覆盖第一页面层的层级。
9、本实施例提供的层级更新系统,能够响应目标对象的第二加载指令,动态地调起第二页面层,并根据页面层类型与配置规则的匹配情况,智能地调整页面层级。这种动态调整机制使得系统能够适应不同页面层之间的层级需求,提高了页面的灵活性和用户体验。通过第二协作模块的介入,系统能够检测并处理第二页面层与第一页面层之间的层级冲突。当两者层级不相同时,系统能够自动从预设的规则库中匹配相应的规则,并据此调整第一页面层的层级以匹配第二页面层,实现了跨页面层级的协调和统一。
10、在一个可选的实施方式中,第一协作模块进一步用于接收第一页面层的层级,将初始层级按照预设的数量递增为第一页面层的层级。
11、本实施例提供的层级更新系统,通过将层级调整逻辑封装在第一协作模块中,并采用预设的数量递增策略,可以显著减少层级管理相关的代码量。这不仅降低了系统的复杂度,还提高了代码的可读性和可维护性。
12、在一个可选的实施方式中,系统还包括:监控模块;监控模块,用于监控第一规则和第一页面层的类型是否相匹配、第二规则和第二页面层的类型是否相匹配,若第一规则和第一页面层的类型不匹配和/或第二规则和第二页面层的类型不匹配,按照语音警告、错误提示或高亮显示的形式进行报警。
13、本实施例提供的层级更新系统,监控模块能够持续监控规则和页面层之间的类型匹配情况,及时发现并报告不匹配的问题。这有助于快速定位和修复潜在的问题,从而避免系统因类型不匹配而导致的错误或崩溃,提高了系统的整体稳定性。当用户输入的数据与规则不匹配时,监控模块能够立即通过语音警告、错误提示或高亮显示等方式通知用户。这种即时反馈机制减少了用户的困惑和挫败感,帮助用户快速理解问题所在并作出相应调整,从而提升了用户体验。
14、第二方面,本发明提供了一种层级更新方法,方法包括:响应于目标对象的第一加载指令,调起第一页面层;检测第一页面层类型和第一协作模块中配置的第一规则是否相对应;若第一页面层的类型和第一协作模块中配置的第一规则相对应,按照预设的规则将初始层级转化为第一页面层的层级;将初始层级更新为第一页面层的层级,以使第一页面层的层级覆盖初始层级。
15、第三方面,本发明提供了一种层级更新装置,装置包括:调起模块,用于响应于目标对象的第一加载指令,调起第一页面层;检测模块,用于检测第一页面层类型和第一协作模块中配置的第一规则是否相对应;转化模块,用于若第一页面层的类型和第一协作模块中配置的第一规则相对应,按照预设的规则将初始层级转化为第一页面层的层级;更新覆盖模块,用于将初始层级更新为第一页面层的层级,以使第一页面层的层级覆盖初始层级。
16、第四方面,本发明提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的层级更新方法。
17、第五方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的层级更新方法。
18、第六方面,本发明提供了一种计算机程序产品,包括计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的层级更新方法。