[发明专利]前端应用嵌套方法、装置、设备及存储介质在审
申请号: | 202110692038.X | 申请日: | 2021-06-22 |
公开(公告)号: | CN113419817A | 公开(公告)日: | 2021-09-21 |
发明(设计)人: | 华林 | 申请(专利权)人: | 康键信息技术(深圳)有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F21/53;G06F9/451 |
代理公司: | 北京市京大律师事务所 11321 | 代理人: | 姚维 |
地址: | 518052 广东省深圳市前海深港合作区前*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 前端 应用 嵌套 方法 装置 设备 存储 介质 | ||
本发明涉及研发管理领域,公开了一种前端应用嵌套方法、装置、设备及存储介质,用于提高前端应用嵌套的可维护性。所述前端应用嵌套方法包括:在主应用的配置资源中获取应用配置信息;根据应用配置信息中至少一个初始子应用的路径信息,预加载每个初始子应用;对每个初始子应用创建对应的沙箱环境,并在每个初始子应用对应的沙箱环境中记录对应的全局对象;在主应用中挂载每个初始子应用,并对主应用进行页面路由监听,并根据页面路由监听结果,加载主应用和目标子应用,并更改全局对象的状态。此外,本发明还涉及区块链技术,全局对象数据可存储于区块链节点中。
技术领域
本发明涉及网页配置领域,尤其涉及一种前端应用嵌套方法、装置、设备及存储介质。
背景技术
在终端开发过程中,难免会在主应用中嵌入其它的子应用,例如在主应用中嵌入视频播放的子应用,或者文档查看的子应用,这种应用之间相互嵌套的方法使前端应用的复用性提高,从而提高前端的开发效率。
目前终端应用嵌入的方式大多是采用内联框架Iframe来内嵌应用,但是,Iframe对于大型应用来说存在许多缺点,如多层嵌套难以维护、需额外加载资源文件、以及应用之间存在跨域问题等,可见,现有的终端应用嵌套方式存在资源难以维护的技术问题。
发明内容
本发明提供了一种前端应用嵌套方法、装置、设备及存储介质,用于提高前端应用嵌套的可维护性。
本发明第一方面提供了一种前端应用嵌套方法,包括:
初始化主应用的配置资源,并在所述配置资源中获取应用配置信息,所述应用配置信息包括至少一个初始子应用的路径信息;
根据所述应用配置信息中每个所述初始子应用的路径信息,预加载每个初始子应用,每个所述初始子应用为预先在主应用中注册的子应用;
对每个所述初始子应用创建对应的沙箱环境,并在每个所述初始子应用对应的沙箱环境中记录对应的全局对象;
在所述主应用中挂载每个所述初始子应用,并对所述主应用进行页面路由监听,得到页面路由监听结果;
根据所述页面路由监听结果,加载所述主应用和目标子应用,并根据所述沙箱环境,更改所述全局对象的状态,所述目标子应用为与所述主应用匹配的任意一个初始子应用。
可选的,在本发明第一方面的第一种实现方式中,所述根据所述应用配置信息中每个所述初始子应用的路径信息,预加载每个初始子应用,包括:
根据所述应用配置信息中每个所述初始子应用的路径信息,读取每个初始子应用的入口文件;
执行预置正则表达式,在每个所述入口文件中提取每个初始子应用的内部依赖信息;
通过预置模块加载工具,异步加载所述依赖信息中的依赖文件,所述依赖文件为每个所述初始子应用对应的依赖文件。
可选的,在本发明第一方面的第二种实现方式中,所述对每个所述初始子应用创建对应的沙箱环境,并在每个所述初始子应用对应的沙箱环境中记录对应的全局对象,包括:
在每个所述初始子应用中注入沙箱环境,得到每个所述初始子应用对应的沙箱环境;
通过所述沙箱环境,分别对主应用的全局对象和每个所述初始子应用的全局对象进行拦截,所述主应用的全局对象为所述主应用绑定的全局对象,所述初始子应用的全局对象为所述初始子应用绑定的全局对象;
分别将所述主应用的全局对象和每个所述初始子应用的全局对象记录到每个所述初始子应用对应的状态池中,得到每个所述初始子应用对应的状态池,所述状态池为每个所述初始子应用对应的沙箱环境的状态池。
可选的,在本发明第一方面的第三种实现方式中,所述在所述主应用中挂载每个所述初始子应用,并对所述主应用进行页面路由监听,得到页面路由监听结果,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于康键信息技术(深圳)有限公司,未经康键信息技术(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110692038.X/2.html,转载请声明来源钻瓜专利网。