首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种vue文件转换方法、装置、电子设备及存储介质_北京京东振世信息技术有限公司_202110622935.3 

申请/专利权人:北京京东振世信息技术有限公司

申请日:2021-06-04

公开(公告)日:2024-04-16

公开(公告)号:CN113360141B

主分类号:G06F8/30

分类号:G06F8/30;G06F8/38;G06F8/51

优先权:

专利状态码:有效-授权

法律状态:2024.04.16#授权;2021.09.24#实质审查的生效;2021.09.07#公开

摘要:本发明提供了一种vue文件转换方法、装置、电子设备及存储介质,该方法包括:加载vue文件,解析确定vue文件中的script代码片段;确定需要对所述script代码片段进行js到ts的代码转换时,将所述script代码片段分解为导入代码部分、导出代码部分、以及位于导入代码部分和导出代码部分之间的其它代码部分;分别按照预先设定的导入代码转换规则、导出代码转换规则、和其它代码转换规则对导入代码部分、导出代码部分、和其它代码部分进行js到ts的代码转换;将所述script代码片段替换为由经代码转换后的导入代码部分、其它代码部分、导出代码部分组合而成的script代码片段。本发明能够降低人工成本。

主权项:1.一种vue文件转换方法,其特征在于,该方法包括:加载vue文件,解析确定vue文件中的script代码片段;确定需要对所述script代码片段进行js到ts的代码转换时,将所述script代码片段分解为导入代码部分、导出代码部分、以及位于导入代码部分和导出代码部分之间的其它代码部分;分别按照预先设定的导入代码转换规则、导出代码转换规则、和其它代码转换规则对导入代码部分、导出代码部分、和其它代码部分进行js到ts的代码转换;将所述script代码片段替换为由经代码转换后的导入代码部分、其它代码部分、导出代码部分组合而成的script代码片段;其中,所述导入代码转换规则是:添加用于导入vue装饰器的代码;按照预先设定的导入代码转换规则对导入代码部分进行js到ts的代码转换,包括:在所述导入代码部分的末尾添加用于导入vue装饰器的代码;所述导出代码转换规则包括:对exportdefault的转换规则、以及通过exportdefault导出的每一对象对应的js到ts的代码转换规则;其中,通过exportdefault导出的对象包括props、data、watch、methods、computed、model、lifeCycle;按照预先设定的导出代码转换规则对导出代码部分进行js到ts的代码转换,包括:对于所述exportdefault节点的子节点中的component节点,确定以所述component节点为根节点的AST子树对应的component代码块,对该component代码块进行@component添加,得到如下格式的代码块:@component{component代码块},将进行@component添加后的代码块添加到所述导出代码部分之前;将exportdefault节点对应的代码exportdefault修改为如下格式的代码:exportdefaultclass*extendsVue,其中*为预设组件名称;对于所述exportdefault节点的子节点中的每一非component节点,确定该非component节点所属对象,根据该对象对应的js到ts的代码转换规则对以该子节点为根节点的AST子树对应的代码块进行js到ts的代码转换;所述其它代码转换规则包括:变量赋值语句对应的代码转换规则和函数定义语句对应的代码转换规则;按照预先设定的其它代码转换规则对其它代码部分进行js到ts的代码转换,包括:对于AST树中对应于所述其它代码部分的AST子树上的每一节点,执行以下操作:判断该节点对应的代码是否是变量设置语句;如果该节点对应的代码是变量设置语句,则根据变量赋值语句对应的代码转换规则对该节点对应的代码进行js到ts的代码转换;如果该节点对应的代码是函数定义语句,则根据函数定义语句对应的代码转换规则对该节点对应的代码进行js到ts的代码转换;否则,保持该节点对应的代码不变;其中,所述AST树为对所述script代码片段进行解析得到的。

全文数据:

权利要求:

百度查询: 北京京东振世信息技术有限公司 一种vue文件转换方法、装置、电子设备及存储介质

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。