一种页面加载方法及相关装置与流程

文档序号:37264444发布日期:2024-03-12 20:46阅读:15来源:国知局
一种页面加载方法及相关装置与流程

本发明涉及前端,更具体的,涉及一种页面加载方法及相关装置。


背景技术:

1、随着前端应用展示效果的多样性提升,对于列表的使用越来越复杂,列表所展示业务数据的类型也越来越多。

2、目前一般使用数据控制列表或者使用数据单独控制列表子项的常规处理方式,数据与列表紧密耦合,导致列表更新与管理越来越臃肿,且复杂的业务数据中某个数据出错,会导致整个列表出现加载错误。


技术实现思路

1、有鉴于此,本发明提供了一种页面加载方法及相关装置,使列表与数据彻底解耦,有效提高了开发和维护效率。

2、为了实现上述发明目的,本发明提供的具体技术方案如下:

3、第一方面,本发明实施例提供了一种页面加载方法,包括:

4、响应于页面加载指令,获取顶层业务下发的页面列表对应的多元业务数据,所述多元业务数据包括多个业务类型以及每个所述业务类型的配置项;

5、分别根据每个所述业务类型的配置项,构建每个所述业务类型对应的业务模型;

6、分别调用每个所述业务类型对应的业务模型进行视图渲染,完成对所述页面列表的加载。

7、在一些实施例中,所述分别根据每个所述业务类型的配置项,构建每个所述业务类型对应的业务模型,包括:

8、调用多元业务生产类,分别根据每个所述业务类型的配置项,构建每个所述业务类型对应的业务模型。

9、在一些实施例中,在构建每个所述业务类型对应的业务模型之后,还包括:

10、构建所述页面列表对应的hashmap模型缓存池;

11、将每个所述业务类型对应的业务模型添加到所述hashmap模型缓存池。

12、在一些实施例中,所述方法还包括:

13、响应于页面刷新,获取顶层业务下发的所述页面列表对应的多元业务数据;

14、针对每个所述业务类型,判断所述多元业务数据中所述业务类型的配置项与所述hashmap模型缓存池中所述业务类型对应的业务模型的配置项是否一致;

15、若一致,利用所述hashmap模型缓存池中的所述业务类型对应的业务模型进行视图渲染;

16、若不一致,利用所述多元业务数据中所述业务类型的配置项,构建所述业务类型对应的目标业务模型,将所述hashmap模型缓存池中的所述业务类型对应的业务模型更新为所述目标业务模型,并利用所述hashmap模型缓存池中的所述目标业务模型进行视图渲染。

17、在一些实施例中,所述判断所述多元业务数据中所述业务类型的配置项与所述hashmap模型缓存池中所述业务类型对应的业务模型的配置项是否一致,包括:

18、判断所述多元业务数据中所述业务类型的配置项的哈希值与所述hashmap模型缓存池中所述业务类型对应的业务模型的配置项的哈希值是否一致。

19、在一些实施例中,在将每个所述业务类型对应的业务模型添加到所述hashmap模型缓存池之后,所述方法还包括:

20、为所述hashmap模型缓存池中的每个所述业务类型对应的业务模型配置一个计数器,并设置计数器的初始值;

21、针对所述hashmap模型缓存池中的每个业务模型,若业务模型被用于视图渲染,将业务模型对应的计数器的数值加1;

22、若所述hashmap模型缓存池对应的所述页面列表加载完毕,分别将所述hashmap模型缓存池中所有业务模型对应的计数器的数值减1;

23、当计数器的数值归零时,将对应的业务模型从所述hashmap模型缓存池中移除。

24、第二方面,本发明实施例提供了一种页面加载装置,包括:

25、业务数据获取单元,用于响应于页面加载指令,获取顶层业务下发的页面列表对应的多元业务数据,所述多元业务数据包括多个业务类型以及每个所述业务类型的配置项;

26、业务模型构建单元,用于分别根据每个所述业务类型的配置项,构建每个所述业务类型对应的业务模型;

27、视图渲染单元,用于分别调用每个所述业务类型对应的业务模型进行视图渲染,完成对所述页面列表的加载。

28、在一些实施例中,所述业务模型构建单元,具体用于调用多元业务生产类,分别根据每个所述业务类型的配置项,构建每个所述业务类型对应的业务模型。

29、在一些实施例中,所述装置还包括:

30、模型缓存池构建单元,用于构建所述页面列表对应的hashmap模型缓存池;将每个所述业务类型对应的业务模型添加到所述hashmap模型缓存池。

31、在一些实施例中,所述装置还包括:

32、页面刷新响应单元,用于响应于页面刷新,获取顶层业务下发的所述页面列表对应的多元业务数据;

33、配置项判断单元,用于针对每个所述业务类型,判断所述多元业务数据中所述业务类型的配置项与所述hashmap模型缓存池中所述业务类型对应的业务模型的配置项是否一致;若一致,利用所述hashmap模型缓存池中的所述业务类型对应的业务模型进行视图渲染;若不一致,利用所述多元业务数据中所述业务类型的配置项,构建所述业务类型对应的目标业务模型,将所述hashmap模型缓存池中的所述业务类型对应的业务模型更新为所述目标业务模型,并利用所述hashmap模型缓存池中的所述目标业务模型进行视图渲染。

34、在一些实施例中,所述配置项判断单元,具体用于判断所述多元业务数据中所述业务类型的配置项的哈希值与所述hashmap模型缓存池中所述业务类型对应的业务模型的配置项的哈希值是否一致。

35、在一些实施例中,所述装置还包括:

36、计数器配置单元,用于为所述hashmap模型缓存池中的每个所述业务类型对应的业务模型配置一个计数器,并设置计数器的初始值;

37、第一计数器处理单元,用于针对所述hashmap模型缓存池中的每个业务模型,若业务模型被用于视图渲染,将业务模型对应的计数器的数值加1;

38、第二计算器处理单元,用于若所述hashmap模型缓存池对应的所述页面列表加载完毕,分别将所述hashmap模型缓存池中所有业务模型对应的计数器的数值减1;

39、业务模型移除单元,用于当计数器的数值归零时,将对应的业务模型从所述hashmap模型缓存池中移除。

40、第三方面,本发明实施例提供了一种电子设备,所述电子设备包括处理器以及存储器;

41、所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;

42、所述处理器用于根据所述程序代码中的指令执行如第一方面中任意一种实现方式描述的一种页面加载方法。

43、第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面中任意一种实现方式描述的一种页面加载方法。

44、相对于现有技术,本发明的有益效果如下:

45、本发明公开的一种页面加载方法及相关装置,在复杂列表的加载中加入模型中间层,在页面列表加载时,获取顶层业务下发的页面列表对应的多元业务数据之后,分别构建多元业务数据中每个业务类型对应的业务模型,从而分别调用每个业务类型对应的业务模型进行视图渲染,完成对页面列表的加载,使列表与数据彻底解耦,列表更新与管理时只需对有改动的业务类型对应的业务模型进行更新即可,有效提高了开发和维护效率。并且多元业务数据中某个业务类型的数据出错,仅影响对应业务模型的视图渲染,不影响列表中的其他部分,降低了整体列表的错误率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1