将小程序转换为Web应用的方法、装置、介质以及设备制造方法及图纸

技术编号:37666887 阅读:15 留言:0更新日期:2023-05-26 04:26
本申请提供一种将小程序转换为Web应用的方法、将小程序转换为Web应用的装置、计算机可读存储介质以及电子设备,涉及小程序技术领域。该方法包括:对小程序的源文件进行语法转换,以将小程序的源文件调整为Web应用程序;基于Web技术栈运行Web应用程序,以模拟显示小程序的页面。本技术方案提供了一种将小程序直接转换为Web应用的方案,从而无需同时维护小程序工程和网页端的工程,进而有利于提升相关产品的迭代效率。品的迭代效率。品的迭代效率。

【技术实现步骤摘要】
将小程序转换为Web应用的方法、装置、介质以及设备


[0001]本申请涉及小程序
,尤其涉及一种将小程序转换为Web应用的方法、将小程序转换为Web应用的装置、计算机可读存储介质以及电子设备。

技术介绍

[0002]由于小程序和网页在技术栈上存在差异,所以前端开发者需同时维护小程序工程和网页端的工程。这种工作模式不利于相关产品的迭代效率。因此,相关技术中亟需一种能够将小程序转换为Web应用的方案。
[0003]需要说明的是,在上述
技术介绍
部分公开的信息仅用于加强对本申请的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。

技术实现思路

[0004]本申请提供一种将小程序转换为Web应用的方法、将小程序转换为Web应用的装置、计算机可读存储介质以及电子设备,提供了一种将小程序转换为Web应用的方案,有利于提升相关产品的迭代效率。
[0005]本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
[0006]根据本申请的一个方面,提供将小程序转换为Web应用的方法,上述方法包括:对小程序的源文件进行语法转换,以将上述小程序的源文件调整为Web应用程序;以及,基于Web技术栈运行上述Web应用程序,以模拟显示上述小程序的页面。
[0007]在示例性的实施例中,基于前述方案,上述小程序为目标小程序;
[0008]上述对小程序的源文件进行语法转换,以将上述小程序的源文件调整为Web应用程序,包括:根据源代码类型与目标代码类型之间的差异信息,将源小程序的源代码文件映射为上述目标小程序的目标小程序文件;对小程序的源文件进行语法转换,以将上述小程序的源文件调整为Web应用程序;
[0009]上述基于Web技术栈运行上述Web应用程序,以模拟显示上述小程序的页面,包括:基于Web技术栈运行上述Web应用程序,以模拟显示上述源小程序的页面。
[0010]在示例性的实施例中,基于前述方案,上述根据源代码类型与目标代码类型之间的差异信息,将源小程序的源代码文件映射为上述目标小程序的目标小程序文件,包括以下步骤中的一种或多种:对于上述源代码文件所包括的页面结构文件,根据上述差异信息确定待调整的第一属性名,并将上述第一属性名映射为满足上述目标代码类型的第二属性名,和/或,根据上述差异信息确定待调整的第一组件名,并将上述第一组件名映射为满足上述目标代码类型的第二组件名;对于上述源代码文件所包括的页面样式文件,根据上述差异信息确定待调整的第一样式,并将上述第一样式调整为满足上述目标代码类型的第二样式;对于上述源代码文件所包括的页面逻辑文件,根据上述差异信息确定待调整的第一接口全局名,并将上述第一接口全局名映射为满足上述目标代码类型的第二接口全局名,
和/或,根据上述差异信息确定待调整的第一接口,并将上述第一接口转换为满足上述目标代码类型的第二接口;对于上述源代码文件所包括的页面配置文件,根据上述差异信息确定待调整的第一配置名,并将上述第一配置名映射为满足上述目标代码类型的第二配置名;对于上述源代码文件所包括的自定义脚本文件,根据上述差异信息确定待添加的第一脚本,并添加对应于上述第一脚本且满足上述目标代码类型的第二脚本。
[0011]在示例性的实施例中,基于前述方案,上述小程序的源文件包括页面样式文件;上述对小程序的源文件进行语法转换,以将上述小程序的源文件调整为Web应用程序,包括:通过Web组件实现上述页面样式文件所提供的标签样式;通过转换插件实现小程序的显示单位至Web显示单位的转换;通过条件编译组件实现在多端中任一端区别于其他端的显示;根据上述Web组件、上述转换插件以及上述条件编译组件,确定上述Web应用程序中关于页面样式的第一文件。
[0012]在示例性的实施例中,基于前述方案,上述小程序的源文件包括页面结构文件;上述对小程序的源文件进行语法转换,以将上述小程序的源文件调整为Web应用程序,包括:将上述页面结构文件编译为抽象语法树,对上述抽象语法树进行语法转换,并根据语法转换后的抽象语法树生成目标代码,其中上述目标代码为关于待渲染页面结构且满足Web语法的代码;基于预设标准,将上述目标小程序文件的事件机制调整为Web事件机制;从上述页面结构文件中导出渲染函数;根据上述目标代码、上述Web事件机制以及上述渲染函数,确定上述Web应用程序中关于页面结构的第二文件。
[0013]在示例性的实施例中,基于前述方案,上述小程序的源文件包括页面逻辑文件;上述对小程序的源文件进行语法转换,以将上述小程序的源文件调整为Web应用程序,包括:导入运行时模块,通过上述运行时模块模拟上述源小程序的生命周期,以及通过上述运行时模块确定关于渲染事件的目标函数,上述目标函数用于读取上述第二文件中的渲染函数;通过配置读取模块读取小程序的页面配置信息,并将上述配置信息提供给上述运行时模块;通过内容获取模块获取上述页面逻辑文件中的内容信息,并将上述内容信息提供给上述运行时模块;根据上述导入运行时模块、上述配置读取模块以及上述内容获取模块,确定上述Web应用程序中关于页面逻辑的第三文件。
[0014]在示例性的实施例中,基于前述方案,上述基于Web技术栈运行上述Web应用程序,包括:调用上述Web应用程序中关于页面逻辑的第三文件所暴露的渲染函数;通过上述渲染函数调用上述第二文件中的目标代码,其中上述目标代码对应多个组件;响应上述多个组件中目标组件被渲染,通过上述运行时模块控制渲染上述目标组件的生命周期;显示包含上述目标组件的第一页面。
[0015]在示例性的实施例中,基于前述方案,上述目标组件的功能由上述第三文件所提供的目标接口提供。
[0016]在示例性的实施例中,基于前述方案,在上述显示包含上述目标组件的第一页面之后,上述方法还包括:响应上述第一页面中目标对象被触发,确定上述第一页面内的待更新内容,并通过上述运行时模块控制上述第一页面的状态更新;显示更新后的第二页面。
[0017]在示例性的实施例中,基于前述方案,上述基于Web技术栈运行上述Web应用程序,包括:根据上述小程序的生命周期,显示关于上述小程序的页面,其中上述源小程序的生命周期由上述运行时模块模拟。
[0018]根据本申请的另一个方面,提供一种将小程序转换为Web应用的方法,该方法包括:对小程序的源文件进行语法转换,以将上述小程序的源文件调整为Web应用程序。
[0019]在示例性的实施例中,基于前述方案,上述小程序为目标小程序;上述对小程序的源文件进行语法转换,以将上述小程序的源文件调整为Web应用程序,包括:根据源代码类型与目标代码类型之间的差异信息,将源小程序的源代码文件映射为上述目标小程序的目标小程序文件;对上述目标小程序文件进行语法转换,以将上述目标小程序文件调整为Web应用程序;上述基于Web技术栈运行上述Web应用程序,以模拟显示上述小程序的页面,包括:基于Web技术栈运行上述Web应用程序,以模拟显示上述源小程序的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种将小程序转换为Web应用的方法,其特征在于,所述方法包括:对小程序的源文件进行语法转换,以将所述小程序的源文件调整为Web应用程序;基于Web技术栈运行所述Web应用程序,以模拟显示所述小程序的页面。2.根据权利要求1所述的方法,其特征在于,所述小程序为目标小程序;所述对小程序的源文件进行语法转换,以将所述小程序的源文件调整为Web应用程序,包括:根据源代码类型与目标代码类型之间的差异信息,将源小程序的源代码文件映射为所述目标小程序的目标小程序文件;对所述目标小程序文件进行语法转换,以将所述目标小程序文件调整为Web应用程序;所述基于Web技术栈运行所述Web应用程序,以模拟显示所述小程序的页面,包括:基于Web技术栈运行所述Web应用程序,以模拟显示所述源小程序的页面。3.根据权利要求2所述的方法,其特征在于,所述根据源代码类型与目标代码类型之间的差异信息,将源小程序的源代码文件映射为所述目标小程序的目标小程序文件,包括以下步骤中的一种或多种:对于所述源代码文件所包括的页面结构文件,根据所述差异信息确定待调整的第一属性名,并将所述第一属性名映射为满足所述目标代码类型的第二属性名,和/或,根据所述差异信息确定待调整的第一组件名,并将所述第一组件名映射为满足所述目标代码类型的第二组件名;对于所述源代码文件所包括的页面样式文件,根据所述差异信息确定待调整的第一样式,并将所述第一样式调整为满足所述目标代码类型的第二样式;对于所述源代码文件所包括的页面逻辑文件,根据所述差异信息确定待调整的第一接口全局名,并将所述第一接口全局名映射为满足所述目标代码类型的第二接口全局名,和/或,根据所述差异信息确定待调整的第一接口,并将所述第一接口转换为满足所述目标代码类型的第二接口;对于所述源代码文件所包括的页面配置文件,根据所述差异信息确定待调整的...

【专利技术属性】
技术研发人员:刘宇高华峰
申请(专利权)人:拉扎斯网络科技上海有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1