System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及计算机软件,尤其涉及一种小程序转换方法、装置、设备及存储介质。
技术介绍
1、根据项目需求开发挂载于即时通信app的各类小程序第三方应用,因涉及到代码交付,故须使用即时通信app官方原生语言及api进行开发,而现有技术中主流多端代码转换主要有unicloud,apicloud等等,都是按照该产品的特定要求编写代码,来转换成h5、可加载的小程序等应用程序,并且这几个应用之间不存在相互转换的方法。针对需要使用即时通信app官方原生语言及api进行开发的项目,本身这类代码在展现的效果上是相同的,如果不考虑进行原生代码的转换,则需要进行代码重写,会花费大量的时间开发已经开发过的功能。
2、因此,采用现有的方法存在使用原生代码在不同的即时通信app中转换效率低的问题。
技术实现思路
1、本申请提供一种小程序转换方法、装置、设备及存储介质,用以解决使用原生代码在不同的即时通信app中转换效率低的技术问题。
2、第一方面,本申请提供一种小程序转换方法,包括:
3、获取小程序中的目标项目,目标项目为从第一即时通信app待转换至第二即时通信app的项目;
4、通过javascript读取并遍历目标项目,得到待处理的目标文件和其它文件;
5、确定目标文件的待处理文件类型,文件类型包括acss类型的文件、axml类型的文件、js类型的文件、以及json类型的文件;
6、根据目标文件的待处理文件类型,调用javascript
7、根据转换后的目标文件以及其它文件,得到转换后的项目。
8、在本申请实施例中,在获取小程序中的目标项目之前,方法还包括:
9、配置methods文件、util文件、config文件、index.js文件;
10、将methods文件中的文件转换方法、util文件中的文件转换方法、config文件中的文件转换方法、以及javascript中的fs模块和path模块引入index.js文件中。
11、在本申请实施例中,通过javascript读取并遍历目标项目,得到待处理的目标文件和其它文件,包括:
12、通过javascript中的fs模块和path模块读取目标项目;
13、利用javascript中的node.js遍历目标项目,当目标项目中的文件属于jumpnames文件和whitenames文件,则确定为其它文件,当目标项目中的文件不属于jumpnames文件和whitenames文件,则确定为待处理的目标文件。
14、在本申请实施例中,确定目标文件的待处理文件类型,包括:
15、判断目标文件为文件夹或者文件;
16、若目标文件为文件夹,则创建同级文件夹,并确定文件夹中文件的文件类型;
17、若目标文件为文件,则确定文件的文件类型。
18、在本申请实施例中,当文件类型为acss类型,调用javascript中的index.js文件中的不同文件类型对应的转换方法进行处理,包括:
19、按同级同名创建wxss后缀的文件;
20、将acss类型的文件代码中的.acss转换为.wxss;
21、将rem单位前面的数值乘以第一设定系数再拼接rpx单位、或者将rem单位前面的数值乘以第二设定系数再拼接rem单位,第一设定系数和第二设定系数为不同即时通信app的计量单位的转换系数,第一设定系数与第二设定系数为不同的数值。
22、在本申请实施例中,当文件类型为axml类型,调用javascript中的index.js文件中的不同文件类型对应的转换方法进行处理,包括:
23、按同级同名创建wxml后缀的文件;
24、将axml类型的文件代码中的.axml替换为.wxml,ontap替换为bindtap,onblur替换为bindblur,formtype替换为form-type,a:替换为wx:,onsubmit替换为bindsubmit,`替换为引号,${}替换为字符串拼接。
25、在本申请实施例中,当文件类型为js类型,调用javascript中的index.js文件中的不同文件类型对应的转换方法进行处理,包括:
26、按同级同名创建js后缀的文件;
27、对于js类型的文件中的app.js文件,向app.js文件中引入planb.js的代码,planb.js为引入index.js文件中的util文件中的文件转换方法;
28、对于js类型的文件中的非app.js文件,将dd.替换为wx.,dataset后面部分变成小写再拼接dataset前面部分。
29、在本申请实施例中,当文件类型为json类型,调用javascript中的index.js文件中的不同文件类型对应的转换方法进行处理,包括:
30、按同级同名创建json后缀的文件;
31、对于json文件类型中的app.json文件,遍历并替换app.json文件中的key;
32、对于json文件类型中的非app.json文件,将defaulttitle替换为navigationbartitletext。
33、9、根据权利要求1的方法,其特征在于,根据转换后的文件以及其它文件,得到转换后的项目,包括:
34、对其它文件中的jumpnames文件进行过滤处理,得到初始文件;
35、对初始文件中的whitenames文件进行复制处理,得到处理后的其它文件;
36、结合转换后的目标文件和处理后的其它文件,得到转换后的项目。
37、第二方面,本申请提供一种小程序转换装置,包括:
38、获取模块,用于获取小程序中的目标项目,目标项目为从第一即时通信app待转换至第二即时通信app的项目;
39、读取模块,用于通过javascript读取并遍历目标项目,得到目标文件和其它文件;
40、判断模块,用于通过javascript读取并遍历目标项目,得到待处理的目标文件和其它文件;
41、转换模块,用于确定目标文件的待处理文件类型,文件类型包括acss类型的文件、axml类型的文件、js类型的文件、以及json类型的文件;
42、生成模块,用于根据转换后的目标文件以及其它文件,得到转换后的项目。
43、第三方面,本申请提供一种电子设备,包括:处理器,以及与处理器通信连接的存储器;存储器存储计算机执行指令;处理器执行存储器存储的计算机执行指令,以执行本申请的小程序转换方法。
44、第四方面,本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行本文档来自技高网...
【技术保护点】
1.一种小程序转换方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,在所述获取小程序中的目标项目之前,所述方法还包括:
3.根据权利要求1或2所述的方法,其特征在于,所述通过所述JavaScript读取并遍历所述目标项目,得到待处理的目标文件和其它文件,包括:
4.根据权利要求3所述的方法,其特征在于,所述确定所述目标文件的待处理文件类型,包括:
5.根据权利要求1所述的方法,其特征在于,当所述文件类型为所述acss类型,调用所述JavaScript中的index.js文件中的不同文件类型对应的转换方法进行处理,包括:
6.根据权利要求1所述的方法,其特征在于,当所述文件类型为所述axml类型,调用所述JavaScript中的index.js文件中的不同文件类型对应的转换方法进行处理,包括:
7.根据权利要求1所述的方法,其特征在于,当所述文件类型为js类型,调用所述JavaScript中的index.js文件中的不同文件类型对应的转换方法进行处理,包括:
8.根据权利要求1所述
9.根据权利要求1所述的方法,其特征在于,所述根据所述转换后的文件以及所述其它文件,得到转换后的项目,包括:
10.一种小程序转换装置,其特征在于,包括:
11.一种电子设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器;
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至9任一项所述的方法。
...【技术特征摘要】
1.一种小程序转换方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,在所述获取小程序中的目标项目之前,所述方法还包括:
3.根据权利要求1或2所述的方法,其特征在于,所述通过所述javascript读取并遍历所述目标项目,得到待处理的目标文件和其它文件,包括:
4.根据权利要求3所述的方法,其特征在于,所述确定所述目标文件的待处理文件类型,包括:
5.根据权利要求1所述的方法,其特征在于,当所述文件类型为所述acss类型,调用所述javascript中的index.js文件中的不同文件类型对应的转换方法进行处理,包括:
6.根据权利要求1所述的方法,其特征在于,当所述文件类型为所述axml类型,调用所述javascript中的index.js文件中的不同文件类型对应的转换方法进行处理,包括:
7.根...
【专利技术属性】
技术研发人员:高强,王全新,梁刚,王建军,赵善龙,
申请(专利权)人:中国联合网络通信集团有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。