本申请实施例提供了一种组件处理方法、装置及服务器,其中方法包括:通过软件开发工具包读取入口文件清单,入口文件清单包括适配多个平台的入口文件路径、及组件产物对应的元数据;通过软件开发工具包根据各平台的入口文件路径获取入口源码,根据入口源码及组件产物对应的元数据进行编译,得到组件;通过软件开发工具包根据组件配置清单生成各平台对应的胶水层;以各平台对应的胶水层为入口对组件进行编译,得到各平台对应的构建产物。这样,通过软件开发工具包可以快速地获取各平台对应的构建产物,实现组件在多平台多次复用,提高构建产物的效率,节约用户开发时间。节约用户开发时间。节约用户开发时间。
【技术实现步骤摘要】
组件处理方法、装置及服务器
[0001]本申请涉及计算机
,尤其涉及一种组件处理方法、装置及服务器。
技术介绍
[0002]现有技术中,在交付网页(Web)应用的场景中,经常需要把可以复用的能力封装为组件。当开发者完成组件开发时,需要将组件的代码以某种形式导出,进而使其他开发者可以使用,这种导出组件的行为在业界普遍称为构建打包,最后导出的产物需要符合某种标准。组件的构建打包标准一般与低代码、无代码平台等消费方有强耦合的绑定关系,以实现组件的加载和显示。现有的低代码、无代码工具平台的组件构建打包方案一般提供用于搭建Web应用的低代码打包工具,低代码打包工具支持以自定义组件的方式拓展原有工具能力,自定义组件的构建打包方式和配套脚手架由专业团队维护。低代码打包工具构建的软件包可以被一对一定制的平台识别并使用。
[0003]这种通过低代码打包工具构建打包组件有以下弊端:生态单一,打包产物仅支持在固定平台使用;复杂的组件代码逻辑,开发者需要了解平台对组件的限制,进而开发适配数据类型的胶水层;资源浪费,多个组件引入同样的依赖被每个组件构建时打入,因此加载页面时通过网络多次传输了相同资源造成了社会资源浪费;对复杂数据结构羸弱的支持,对于多于一层深度的复杂数据结构需要手动对数据进行序列化和反序列化,增加了开发者的心智负担;构建打包速度极慢,在同一台电脑上(Intel i5 CPU 16GB RAM SSD)对同一组件源码进行打包,平均需要30秒
‑
40秒,严重地影响了开发者的效率。综上,现有低代码打包工具构建组件过程存在效率比较低的问题。
技术实现思路
[0004]为了解决上述技术问题,本申请实施例提供了一种组件处理方法、装置及服务器。
[0005]第一方面,本申请实施例提供了一种组件处理方法,所述方法包括:
[0006]通过软件开发工具包读取入口文件清单,所述入口文件清单包括适配多个平台的入口文件路径、及组件产物对应的元数据;
[0007]通过所述软件开发工具包根据各平台的入口文件路径获取入口源码,根据所述入口源码及所述组件产物对应的元数据进行编译,得到组件;
[0008]通过所述软件开发工具包根据组件配置清单生成各平台对应的胶水层;
[0009]以各平台对应的胶水层为入口对所述组件进行编译,得到各平台对应的构建产物。
[0010]可选的,所述方法还包括:
[0011]将所述入口文件清单、所述组件配置清单、组件加载器、及所述各平台对应的构建产物进行打包,得到打包产物。
[0012]可选的,所述组件配置清单包括组件配置参数、配置类型和配置输入器类型,所述通过所述软件开发工具包根据组件配置清单生成各平台对应的胶水层,包括:
[0013]通过所述软件开发工具包根据所述组件配置参数、所述配置类型和所述配置输入器类型生成各平台对应的参数模型;
[0014]根据所述参数模型生成各平台对应的胶水层。
[0015]可选的,所述方法还包括:
[0016]通过所述软件开发工具包定义所述组件的可接收参数配置和描述、可发出的事件及描述、可读取的数据模型。
[0017]可选的,所述方法还包括:
[0018]通过所述软件开发工具包根据事件总线确定主题变更、国际化语音变更、全局事件及消息服务。
[0019]可选的,所述方法还包括:
[0020]通过所述软件开发工具包对所述组件的外部接口调用进行封装。
[0021]可选的,所述方法还包括:
[0022]当检测到会污染全局变量的依赖时,启动所述组件的自我封装和隔离能力。
[0023]第二方面,本申请实施例提供了一种组件处理装置,所述装置包括:
[0024]读取模块,用于通过软件开发工具包读取入口文件清单,所述入口文件清单包括适配多个平台的入口文件路径、及组件产物对应的元数据;
[0025]第一编译模块,用于通过所述软件开发工具包根据各平台的入口文件路径获取入口源码,根据所述入口源码及所述组件产物对应的元数据进行编译,得到组件;
[0026]生成模块,用于通过所述软件开发工具包根据组件配置清单生成各平台对应的胶水层;
[0027]第二编译模块,用于以各平台对应的胶水层为入口对所述组件进行编译,得到各平台对应的构建产物。
[0028]可选的,组件处理装置还包括:
[0029]打包模块,用于将所述入口文件清单、所述组件配置清单、组件加载器、及所述各平台对应的构建产物进行打包,得到打包产物。
[0030]可选的,所述组件配置清单包括组件配置参数、配置类型和配置输入器类型,所述生成模块,还用于通过所述软件开发工具包根据所述组件配置参数、所述配置类型和所述配置输入器类型生成各平台对应的参数模型;
[0031]根据所述参数模型生成各平台对应的胶水层。
[0032]可选的,组件处理装置还包括:
[0033]设置模块,用于通过所述软件开发工具包定义所述组件的可接收参数配置和描述、可发出的事件及描述、可读取的数据模型。
[0034]可选的,组件处理装置还包括:
[0035]确定模块,用于通过所述软件开发工具包根据事件总线确定主题变更、国际化语音变更、全局事件及消息服务。
[0036]可选的,组件处理装置还包括:
[0037]封装模块,用于通过所述软件开发工具包对所述组件的外部接口调用进行封装。
[0038]可选的,组件处理装置还包括:
[0039]启动模块,用于当检测到会污染全局变量的依赖时,启动所述组件的自我封装和
隔离能力。
[0040]第三方面,本申请实施例提供了一种移动终端,包括存储器以及处理器,所述存储器用于存储计算机程序,所述计算机程序在所述处理器运行时执行第一方面提供的组件处理方法。
[0041]第四方面,本申请实施例提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序在处理器上运行时执行第一方面提供的组件处理方法。
[0042]上述本申请提供的组件处理方法、装置、服务器,通过软件开发工具包读取入口文件清单,所述入口文件清单包括适配多个平台的入口文件路径、及组件产物对应的元数据;通过所述软件开发工具包根据各平台的入口文件路径获取入口源码,根据所述入口源码及所述组件产物对应的元数据进行编译,得到组件;通过所述软件开发工具包根据组件配置清单生成各平台对应的胶水层;以各平台对应的胶水层为入口对所述组件进行编译,得到各平台对应的构建产物。这样,通过软件开发工具包可以快速地获取各平台对应的构建产物,实现组件在多平台多次复用,提高构建产物的效率,节约用户开发时间。
附图说明
[0043]为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对本申请保护范围的限定。在各个附图中,类似的构成部分采用类本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种组件处理方法,其特征在于,所述方法包括:通过软件开发工具包读取入口文件清单,所述入口文件清单包括适配多个平台的入口文件路径、及组件产物对应的元数据;通过所述软件开发工具包根据各平台的入口文件路径获取入口源码,根据所述入口源码及所述组件产物对应的元数据进行编译,得到组件;通过所述软件开发工具包根据组件配置清单生成各平台对应的胶水层;以各平台对应的胶水层为入口对所述组件进行编译,得到各平台对应的构建产物。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:将所述入口文件清单、所述组件配置清单、组件加载器、及所述各平台对应的构建产物进行打包,得到打包产物。3.根据权利要求1所述的方法,其特征在于,所述组件配置清单包括组件配置参数、配置类型和配置输入器类型,所述通过所述软件开发工具包根据组件配置清单生成各平台对应的胶水层,包括:通过所述软件开发工具包根据所述组件配置参数、所述配置类型和所述配置输入器类型生成各平台对应的参数模型;根据所述参数模型生成各平台对应的胶水层。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:通过所述软件开发工具包定义所述组件的可接收参数配置和描述、可发出的事件及描述、可读取的数据模型。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:通过...
【专利技术属性】
技术研发人员:朱彦成,朱洪伟,邵剑恒,潘永高,何迪江,
申请(专利权)人:树根互联股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。