【技术实现步骤摘要】
跨栈应用处理与页面渲染方法、装置、设备及存储介质
[0001]本申请涉及互联网
,尤其涉及一种跨栈应用处理与页面渲染方法、装置、设备及存储介质。
技术介绍
[0002]页面布局系统是一种对页面的背景、布局或字号大小等进行设计的系统,页面局部系统通常采用一种技术栈进行开发,例如,页面局部系统的开发可以采用包含构建用户界面的渐进式框架(Vue)的技术栈来进行,也可以使用包含构建用户界面的JavaScript库(React)的技术栈来进行。
[0003]在需要通过页面布局系统进行页面设计时,只能按照页面局部系统的技术栈对页面进行设计,局限性较强,若采用其它技术栈进行页面设计,则需要较高的成本将其它技术栈接入页面局部系统。
技术实现思路
[0004]本申请的多个方面提供一种跨栈应用处理与页面渲染方法、装置、设备及存储介质,用以节省生成应用的成本。
[0005]本申请实施例提供一种跨栈应用处理方法,应用于应用开发平台,方法包括:导入目标组件的描述文件,描述文件具有第一技术栈和第二技术栈均可识别的中 ...
【技术保护点】
【技术特征摘要】
1.一种跨栈应用处理方法,其特征在于,应用于应用开发平台,所述方法包括:导入目标组件的描述文件,所述描述文件具有第一技术栈和第二技术栈均可识别的中间态语法格式,所述第一技术栈用于开发目标应用的后端代码,所述后端代码描述所述目标应用的后端逻辑,所述目标应用的前端视图依赖所述第二技术栈的前端组件库中的目标组件;基于所述目标组件的描述文件,在开发界面上呈现所述目标组件对应的第一节点对象,所述第一节点对象可体现所述目标组件的属性信息;响应对所述第一节点对象的编辑操作,基于所述中间态语法格式生成所述目标应用的前端代码,所述前端代码描述所述目标应用的前端视图所依赖的目标组件的标识、样式以及布局信息。2.根据权利要求1所述的方法,其特征在于,导入目标组件的描述文件之前,还包括:针对所述第二技术栈的前端组件库中的所述目标组件,利用所述中间态语法格式对所述目标组件进行描述,以得到所述目标组件的描述文件。3.根据权利要求1所述的方法,其特征在于,基于所述目标组件的描述文件,在开发界面上呈现所述目标组件对应的第一节点对象,包括:基于所述中间态语法格式,对所述目标组件的描述文件进行解析,得到所述目标组件在所述第二技术栈下的属性信息;基于所述目标组件在所述第二技术栈下的属性信息,生成所述第一技术栈可识别的第一节点对象,并将所述第一节点对象呈现在所述开发界面上,以供应用开发人员基于所述第一节点对象进行编辑操作。4.根据权利要求3所述的方法,其特征在于,基于所述目标组件在所述第二技术栈下的属性信息,生成所述第一技术栈可识别的第一节点对象,包括:基于所述目标组件在所述第二技术栈下的属性信息,将所述目标组件解析为容器、文字或图片,作为所述第一技术栈可识别的第一节点对象。5.根据权利要求3所述的方法,其特征在于,响应对所述第一节点对象的编辑操作,基于所述中间态语法格式生成所述目标应用的前端代码,包括:响应对所述第一节点对象的编辑操作,获取所述第一节点对象的属性信息以及所述第一节点对象与第二节点对象之间的层级关系,所述第二节点对象是生成所述前端代码所需的第三节点对象中除去所述第一节点对象的其它节点对象;根据所述第一节点对象的属性信息以及所述第一节点对象与所述第二节点对象之间的层级关系,生成中间态语法树作为所述前端代码,所述中间态语法树上的节点及其属性信息分别表示所述第三节点对象及其属性信息,所述第三节点对象的属性信息至少包括所述第三节点对象的标识和样式;其中,所述第三节点对象的属性信息表示其对应目标组件在所述第二技术栈下的属性信息,所述第一节点对象与所述第二节点对象之间的层级关系表示其对应目标组件在所述第二技术栈之间的层级关系。6.根据权利要求5所述的方法,其特征在于,响应对所述第一节点对象的编辑操作,获取所述第一节点对象的属性信息以及所述第一节点对象与第二节点对象之间的层级关系,包括:
响应于对所述第一节点对象的输入操作,获取所述第一节点对象的属性信息,并维持所述第一节点对象与第二节点对象之间的层级关系;或者响应于对所述第一节点对象的拖动操作,确定所述第一节点对象的层级信息,并建立所述第一节点对象与第二节点对象之间的层级关系;或者响应于对所述第一节点对象的修改操作,获取所述第一节点对象的属性信息和所述第一节点对象的层级信息,并建立所述第一节点对象与第二节点对象之间的层级关系。7.根据权利要求5所述的方法,其特征在于,还包括:将至少一个前端代码与所述后端代码进行封装,得到跨技术栈开发的所述目标应用的安装代码;在所述至少一个前端代码的数量为大于或等于两个的情况下,所述至少一个前端代码对应于至少两个不同第二技术栈或相同第二技术栈;根据所述目标应用的安装代码安装并运行所述目标应用;以及针对至少一个前端代码中的目标前端代码,在运行到所述目标前端代码时,加载渲染所述目标前端代码所需的目标组件,利用所述目标前端代码对应的目标技术栈的渲染引擎针对所述目标组件渲染出针对所述目标前端代码的前端视图。8.根据权利要求7所述的方法,其特征在于,加载渲染所述目标前端代码所需的目标组件,包括:获取所述目标前端代码所需的目标组件的描述文件;基于所述描述文件动态加载所述目标前端代码所需的目标组件;或者,直接从所述目标技术栈的前端组件库中加载所述目标前端代码所需的目标组件。9.根据权利要求7所述的方法,其特征在于,利用所述目标前端代码对应的目标技术栈的渲染引擎针对所述目标组件渲染出针对所述目标前端代码的前端视图,包括:在所述目标前端代码实现为中间态语法树的情况下,识别所述中间态语法树中包含的多个第三节点对象的属性信息以及所述多个第三节点对象之间的层级关系;将所述多个第三节点对象的属性信息转换为所述目标技术栈所能识别的多个目标组件的描述信息;将所述多个第三节点对象之间的层级关系转换为所述多个目标组件对应的页面布局信息;根据所述页面布局信息和所述多...
【专利技术属性】
技术研发人员:周雨,高飞宇,杨萌,
申请(专利权)人:瑞庭网络技术上海有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。