[发明专利]一种前端代码文件检测方法、装置及电子设备和存储介质有效
申请号: | 202111165055.4 | 申请日: | 2021-09-30 |
公开(公告)号: | CN114003489B | 公开(公告)日: | 2023-08-18 |
发明(设计)人: | 王凯 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F9/445 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 吴磊 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 前端 代码 文件 检测 方法 装置 电子设备 存储 介质 | ||
本申请公开了一种前端代码文件检测方法、装置及电子设备和存储介质,该方法包括:获取每个语言种类对应的配置文件;确定需要检测的目标前端代码所在的文件夹,在文件夹中确定所有后缀为.vue和.js的代码文件;对每个代码文件进行逐行扫描,确定包含多语言配置的命名空间和key定义的代码;在每个语言种类对应的配置文件中查询命名空间和key定义,若未接收到所有语言种类对应的配置文件的返回值,则将命名空间确定为目标命名空间,将key定义确定为目标key定义;输出目标命名空间和目标key定义和对应的代码所在文件的行数、文件路径和未收到返回值的语言种类。本申请在开发阶段实现了目标前端代码文件多语言配置的自动检测。
技术领域
本申请涉及计算机技术领域,更具体地说,涉及一种前端代码文件检测方法、装置及一种电子设备和一种计算机可读存储介质。
背景技术
Vue.js作为流行的前端开发框架,正越来越多的应用到实际项目开发中。在一些项目中,要同时向多个语言环境的用户提供服务,这就要求产品必须实现国际化语言切换。Vue-i18n是Vue.js官方提供的国际化插件,提供了简洁的API和强大的功能,通过简单的配置即可结合Vue.js实现产品的多语言支持。
要在产品开发中实现国际化多语言切换功能,通常的做法,必须按照Vue-i18n的规范,配置好多语言文件,并在业务代码中调用API(Application ProgrammingInterface,应用程序接口)实现自动渲染。如果开发过程中遗漏了多语言配置,或者忘记调用API实现翻译,研发人员只能通过在UI(User Interface Design,界面设计)界面上测试的方式检查多语言配置是否完善正确。例如,研发人员可能只配置了中文语言包,而忘记配置英文语言包,导致系统产品切换为英文时,UI界面上存在空白字段甚至直接出现错误,甚至出现一些不容易发现的系统BUG,进而严重影响用户体验和产品稳定。在相关技术中,多语言配置的检测只能通过UI界面测试的方式,需要耗费研发人员大量的精力,严重影响开发效率。
因此,如何实现前端代码中多语言配置的自动检测是本领域技术人员需要解决的技术问题。
发明内容
本申请的目的在于提供一种前端代码文件检测方法、装置及一种电子设备和一种计算机可读存储介质,实现了前端代码中多语言配置的自动检测。
为实现上述目的,本申请提供了一种前端代码文件检测方法,包括:
获取每个语言种类对应的配置文件;
确定需要检测的目标前端代码所在的文件夹,在所述文件夹中确定所有后缀为.vue和.js的代码文件;
对每个所述代码文件进行逐行扫描,确定包含多语言配置的命名空间和key定义的代码;
在每个语言种类对应的配置文件中查询所述命名空间和所述key定义,若未接收到所有语言种类对应的配置文件的返回值,则将所述命名空间确定为目标命名空间,将所述key定义确定为目标key定义;
输出所述目标命名空间和所述目标key定义和对应的代码所在文件的行数、文件路径和未收到返回值的语言种类。
其中,所述获取每个语言种类对应的配置文件,包括:
读取前端代码仓库中的多语言配置文件,将所述多语言配置文件的文件内容按照语言种类分别缓存为多个配置文件。
其中,在所述文件夹中确定所有后缀为.vue和.js的代码文件,包括:
在所述文件夹中确定除所述多语言配置文件之外所有后缀为.vue和.js的代码文件。
其中,在所述文件夹中确定所有后缀为.vue和.js的代码文件之后,还包括:
将所述代码文件缓存到临时目录中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111165055.4/2.html,转载请声明来源钻瓜专利网。