[发明专利]将RN样式代码转换为小程序样式代码的方法及装置有效
| 申请号: | 201910828490.7 | 申请日: | 2019-09-03 |
| 公开(公告)号: | CN110716746B | 公开(公告)日: | 2023-04-07 |
| 发明(设计)人: | 朴惠姝;邓竹立;彭飞 | 申请(专利权)人: | 五八有限公司 |
| 主分类号: | G06F8/72 | 分类号: | G06F8/72;G06F8/40 |
| 代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 莎日娜 |
| 地址: | 300450 天津市滨海新区经济技术开*** | 国省代码: | 天津;12 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | rn 样式 代码 转换 程序 方法 装置 | ||
本发明公开一种将RN样式代码转换为小程序样式代码的方法及装置,该方法包括:若目标AST的视图节点中包括未封装格式的平台样式、且该视图节点引用目标AST的样式节点中封装格式的非平台特有的变量样式,则将该视图节点所引用的封装格式的非平台特有的变量样式插入到该视图节点的未封装格式的平台样式中,生成小程序的第一类节点;若该视图节点中包括未封装格式的平台样式、且该视图节点引用目标AST的样式节点中封装格式的平台样式,则将该视图节点所引用的封装格式的平台样式插入到该视图节点的未封装格式的平台样式中,生成小程序的第二类节点;基于所生成的小程序节点,生成小程序的布局文件。
技术领域
本发明涉及信息处理技术领域,特别是涉及一种将RN样式代码转换为小程序样式代码的方法及装置。
背景技术
在移动开发领域,自从Facebook推出React Native(简称RN)跨平台移动应用开发框架后,基于JavaScript的跨平台开发逐渐成为移动开发领域中的热门领域。RN推出不久,国内一些互联网公司基于本公司的平台,例如腾讯公司基于微信平台,推出了小程序开发框架,开发者可以在小程序开发框架下,开发能够在微信中运行的小程序。目前,虽然RN代码和小程序代码均是使用JavaScript语言开发的,但是由于语法规则彼此不同,因此开发者需要学习两套开发框架技术,开发两套代码,导致开发成本比较高。为了降低开发成本,迫切需要一种能够将RN代码转换为小程序代码的技术;在将RN代码转换为小程序代码的过程中,样式代码是业务开发的核心之一,涉及的情况比较复杂,因此如何将RN样式代码转换为小程序样式代码,已成为本领域技术人员亟待解决的问题。
发明内容
本发明实施例提供一种将RN样式代码转换为小程序样式代码的方法及装置,以解决现有技术中重复开发所造成的开发成本较高的技术问题。
根据本发明的第一方面,公开了一种将RN样式代码转换为小程序样式代码的方法,所述方法包括:
若目标抽象语法树AST的视图节点中包括未封装格式的平台样式、且所述视图节点引用所述目标AST的样式节点中封装格式的非平台特有的变量样式,则将所述视图节点所引用的封装格式的非平台特有的变量样式插入到所述视图节点的未封装格式的平台样式中,生成小程序的第一类节点;
若所述视图节点中包括未封装格式的平台样式、且所述视图节点引用所述目标AST的样式节点中封装格式的平台样式,则将所述视图节点所引用的封装格式的平台样式插入到所述视图节点的未封装格式的平台样式中,生成小程序的第二类节点;
基于所生成的小程序节点,生成小程序的布局文件;以及基于所述目标AST的样式节点中封装格式的常量样式,生成小程序的样式文件;其中,目标AST为待转换RN文件的AST,一个RN文件对应一个RN页面。
可选地,作为一个实施例,所述方法还包括:
遍历所述目标AST的样式节点,得到所述样式节点中封装格式的样式;
若所述封装格式的样式中包括封装格式的非平台特有的常量样式,则以所述封装格式的样式的样式名作为key值,将所述封装格式的样式中封装格式的非平台特有的常量样式保存至预设常量样式字典中;
若所述封装格式的样式中包括封装格式的非平台特有的变量样式,则以所述封装格式的样式的样式名作为key值,将所述封装格式的样式中封装格式的非平台特有的变量样式保存至预设变量样式字典中;
若所述封装格式的样式中包括封装格式的平台样式、且该平台样式中包括平台特有的常量样式,则以所述封装格式的样式的样式名+平台名作为key值,将所述封装格式的样式中封装格式的平台特有的常量样式保存至所述预设常量样式字典中;
若所述封装格式的样式中包括封装格式的平台样式、且该平台样式中包括平台特有的变量样式,则以所述封装格式的样式的样式名+平台名作为key值,将所述封装格式的样式中封装格式的平台特有的变量样式保存至所述预设变量样式字典中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于五八有限公司,未经五八有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910828490.7/2.html,转载请声明来源钻瓜专利网。





