CN112306533A - 前端框架自动转换方法、装置、计算机设备及存储介质 - Google Patents
前端框架自动转换方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN112306533A CN112306533A CN202011355935.3A CN202011355935A CN112306533A CN 112306533 A CN112306533 A CN 112306533A CN 202011355935 A CN202011355935 A CN 202011355935A CN 112306533 A CN112306533 A CN 112306533A
- Authority
- CN
- China
- Prior art keywords
- conversion
- version
- tool
- converted
- end framework
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 196
- 238000000034 method Methods 0.000 title claims abstract description 53
- 230000006870 function Effects 0.000 claims abstract description 126
- 238000010276 construction Methods 0.000 claims abstract description 17
- 238000004590 computer program Methods 0.000 claims description 14
- 230000010354 integration Effects 0.000 claims description 4
- 238000001514 detection method Methods 0.000 claims description 3
- 238000012546 transfer Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 10
- 238000012827 research and development Methods 0.000 abstract description 2
- 230000009466 transformation Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及研发框架技术领域,提供一种前端框架自动转换方法、装置、计算机设备及存储介质。该方法通过设置配置文件;配置文件中包含与待转换项目关联的第一前端框架版本,以及第二前端框架版本;在获取的预设脚手架工具的工具版本高于或等于预设构建版本时,加载与第二前端框架版本对应的代码核心包;根据代码核心包,通过框架转换工具对待转换文件进行函数匹配转换,得到初始转换结果;将初始转换结果中同一转换变量关联的转换函数整合至一个函数块中,得到各函数块;通过框架转换工具,加载与各函数块对应的应用程序接口,转换生成与待转换项目对应的,且具有第二前端框架版本的项目转换结果。本发明可以避免人为转换过程中出现的错误。
Description
技术领域
本发明涉及研发框架技术领域,尤其涉及一种前端框架自动转换方法、装置、计算机设备及存储介质。
背景技术
随着科学技术的发展,互联网也在不断的更新应用版本,以提供更快速更便捷的应用。例如,在前端框架中,新的框架版本会比老的框架版本占用系统内存更小,挂载速度更快;但是,使用新的框架版本的同时会需要对其语法进行大量调整;因此,对于框架版本的升级来说,每一次升级,都需要使用者花费较多的时间去理解两个框架版本之间的差异,再手动对现有框架版本下的代码进行重构升级,如此,会导致整个框架版本升级过程较长,且容易出现重构错误的问题。
发明内容
本发明实施例提供一种前端框架自动转换方法、装置、计算机设备及存储介质,以解决手动对现有框架版本下的代码进行重构升级,导致框架版本升级过程较长,且容易出现重构错误的问题。
一种前端框架自动转换方法,包括:
设置配置文件;所述配置文件中包含第一前端框架版本以及版本高于所述第一前端框架版本的第二前端框架版本,且所述第一前端框架版本与待转换项目关联;
获取预设脚手架工具,并检测所述预设脚手架工具的工具版本是否大于预设构建版本;
在所述工具版本高于或等于所述预设构建版本时,加载与所述第二前端框架版本对应的代码核心包;
获取所述待转换项目中的待转换文件以及框架转换工具,并根据所述代码核心包,通过所述框架转换工具对所述待转换文件进行函数匹配转换,得到初始转换结果;
抽取所述初始转换结果中各转换变量,以及与各转换变量关联的转换函数,并将同一转换变量关联的转换函数整合至一个函数块中,得到各函数块;
通过所述框架转换工具,加载与各函数块对应的应用程序接口,转换生成与所述待转换项目对应的,且具有所述第二前端框架版本的项目转换结果。
一种前端框架自动转换装置,包括:
配置文件设置模块,用于设置配置文件;所述配置文件中包含第一前端框架版本以及版本高于所述第一前端框架版本的第二前端框架版本,且所述第一前端框架版本与待转换项目关联;
脚手架工具获取模块,用于获取预设脚手架工具,并检测所述预设脚手架工具的工具版本是否大于预设构建版本;
代码核心包加载模块,用于在所述工具版本高于或等于所述预设构建版本时,加载与所述第二前端框架版本对应的代码核心包;
函数匹配转换模块,用于获取所述待转换项目中的待转换文件以及框架转换工具,并根据所述代码核心包,通过所述框架转换工具对所述待转换文件进行函数匹配转换,得到初始转换结果;
函数整合模块,用于抽取所述初始转换结果中各转换变量,以及与各转换变量关联的转换函数,并将同一转换变量关联的转换函数整合至一个函数块中,得到各函数块;
程序接口加载模块,用于通过所述框架转换工具,加载与各函数块对应的应用程序接口,转换生成与所述待转换项目对应的,且具有所述第二前端框架版本的项目转换结果。
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述前端框架自动转换方法。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述前端框架自动转换方法。
上述前端框架自动转换方法、装置、计算机设备及存储介质,该方法通过设置配置文件;所述配置文件中包含第一前端框架版本以及版本高于所述第一前端框架版本的第二前端框架版本,且所述第一前端框架版本与待转换项目关联;获取预设脚手架工具,并检测所述预设脚手架工具的工具版本是否大于预设构建版本;在所述工具版本高于或等于所述预设构建版本时,加载与所述第二前端框架版本对应的代码核心包;获取所述待转换项目中的待转换文件以及框架转换工具,并根据所述代码核心包,通过所述框架转换工具对所述待转换文件进行函数匹配转换,得到初始转换结果;抽取所述初始转换结果中各转换变量,以及与各转换变量关联的转换函数,并将同一转换变量关联的转换函数整合至一个函数块中,得到各函数块;通过所述框架转换工具,加载与各函数块对应的应用程序接口,转换生成与所述待转换项目对应的,且具有所述第二前端框架版本的项目转换结果。
在本发明中,提供的前端框架自动转换方法,可以使得用户在不了解新版本的框架语法等流程的前提下,仍然可以实现框架版本的升级,节省了用户的时间;并且通过上述方法可以避免人为转换过程中出现的错误,且转换后减小了存储内存,减小了系统存储压力。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中前端框架自动转换方法的一应用环境示意图;
图2是本发明一实施例中前端框架自动转换方法的一流程图;
图3是本发明一实施例中前端框架自动转换方法中步骤S30的一流程图;
图4是本发明一实施例中前端框架自动转换方法中步骤S40的一流程图;
图5是本发明一实施例中前端框架自动转换方法中步骤S60的一流程图;
图6是本发明一实施例中前端框架自动转换装置的一原理框图;
图7是本发明一实施例中前端框架自动转换装置中代码核心包加载模块的一原理框图;
图8是本发明一实施例中前端框架自动转换装置中函数匹配转换模块的一原理框图;
图9是本发明一实施例中前端框架自动转换装置中程序接口加载模块的一原理框图;
图10是本发明一实施例中计算机设备的一示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的前端框架自动转换方法,该前端框架自动转换方法可应用如图1所示的应用环境中。具体地,该前端框架自动转换方法应用在前端框架自动转换系统中,该前端框架自动转换系统包括如图1所示的客户端和服务器,客户端与服务器通过网络进行通信,用于解决手动对现有框架版本下的代码进行重构升级,导致框架版本升级过程较长,且容易出现重构错误的问题。其中,客户端又称为用户端,是指与服务器相对应,为客户提供本地服务的程序。客户端可安装在但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备上。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一实施例中,如图2所示,提供一种前端框架自动转换方法,以该方法应用在图1中的服务器为例进行说明,包括如下步骤:
S10:设置配置文件;所述配置文件中包含第一前端框架版本以及版本高于所述第一前端框架版本的第二前端框架版本,且所述第一前端框架版本与待转换项目关联。
可理解地,待转换项目指的是需要从第一前端框架版本升级至第二前端框架版本的项目。示例性地,第一前端框架版本可以为vue2,第二前端框架版本可以为vue3。
S20:获取预设脚手架工具,并检测所述预设脚手架工具的工具版本是否大于预设构建版本。
其中,预设脚手架工具指的是前端框架官方提供的脚手架工具,该预设脚手架工具用于自动构建前端框架版本转换这一项目。示例性地,在第一前端框架版本可以为vue2,第二前端框架版本可以为vue3时,该预设构建版本可以为vue-cli2.0版本。
S30:在所述工具版本高于或等于所述预设构建版本时,加载与所述第二前端框架版本对应的代码核心包。
其中,代码核心包指的是第二前端框架版本必须具备的核心代码库。
在一具体实施例中,如图3所示,步骤S30中包括如下步骤:
S301:自所述配置文件中,获取所述第二前端框架版本的版本字段值。
可以理解地,针对于每一个不同的前端框架版本,均具有一个大版本号(如vue2、vue3等)以及一个小版本号(如vue2.x,vue3.x等),因此该版本字段值表征第二前端框架版本的具体版本号。
具体地,在步骤S10中设置了配置文件,在该配置文件中设置了第一前端框架版本的版本字段值,以及第二前端框架版本的版本字段值,因此可以直接读取该配置文件,进而获取第二前端框架版本的版本字段值。
S302:执行代码核心包加载指令,以在所述待转换项目中加载与所述版本字段值关联的代码核心包。
其中,代码核心包加载指令可以在获取到第二前端框架版本的字段值之后主动触发执行,亦或者是用户通过移动终端等设备生成的代码核心包加载指令,在接收到代码核心包加载指令之后执行。
可以理解地,针对于每一个前端框架版本不同的版本字段值,均具有相对应的代码核心包。示例性地,在获取第二前端框架版本的版本字段值之后,执行代码核心包加载指令,如vue add vue3_version(其中,vue3_version为版本字段值),即可在待转换项目中加载与版本字段值关联的代码核心包。
S303:检测所述待转换项目中是否包含预设转换框架文件。
其中,预设转换框架文件指的是代码核心包中包含的文件,可以通过检测待转换项目中是否包含预设转换框架文件,进而确定代码核心包是否成功加载至待转换项目中。示例性地,假设第一前端框架版本可以为vue2,第二前端框架版本可以为vue3,则该预设转换框架文件可以为“vue/compiler-src”以及“vue-cli-plugin-vue-next”。
S304:在所述待转换项目中包含所述预设转换框架文件时,提示所述代码核心包加载成功。
具体地,在执行代码核心包加载指令,以在所述待转换项目中加载与所述版本字段值关联的代码核心包之后,检测待转换项目中是否包含预设转换框架文件,在待转换项目中包含预设转换框架文件时,表征代码核心包已成功加载至待转换项目中。
在一具体实施例中,步骤S303之后,也即检测待转换项目中是否包含预设转换框架文件之后,还包括:
在待转换项目中不包含预设转换框架文件时,发送加载失败指令至预设接收方。
其中,预设接收方可以为用户的移动终端等设备。在待转换项目中不包含预设转换框架时,发送加载失败指令至预设接收方,以提示用户该代码核心包加载失败。用户可以选择再次执行代码核心包加载指令,亦或者用户主动检测加载失败的原因,以令代码核心包成功加载至待转换项目中。
在另一具体实施方式中,步骤S20之后,也即所述检测所述预设脚手架工具的工具版本是否大于预设构建版本之后,还包括:
在所述工具版本低于所述预设构建版本时,执行脚手架工具升级命令,以令所述预设脚手架工具的工具版本高于或等于所述预设构建版本。
可以理解地,在预设脚手架工具的工具版本低于预设构建版本时,该预设脚手架工具无法自动构建前端框架版本转换这一项目,因此需要执行脚手架工具升级命令(如npmi@vue/cil-g),以令预设脚手架工具的工具版本高于或等于预设构建版本。
S40:获取所述待转换项目中的待转换文件以及框架转换工具,并根据所述代码核心包,通过所述框架转换工具对所述待转换文件进行函数匹配转换,得到初始转换结果。
其中,待转换文件指的是待转换项目中与前端框架版本(如第一前端框架版本和第二前端框架版本)关联的文件,示例性地,假设第一前端框架版本为vue2,第二前端框架版本为vue3,则此时待转换文件可以待转换项目中以vue为后缀的文件。框架转换工具指的是用于前端框架版本升级的工具。
在一具体实施例中,如图4所示,步骤S40中包括:
S401:读取所述配置文件中的目录字段值,以根据所述目录字段值获取所述待转换项目所处的根目录。
其中,目录字段值表征待转换项目所处根目录地址,可以理解地,一个待转换项目中可能存在多个文件,因此需要读取所述配置文件中的目录字段值,进而根据目录字段值获取所述待转换项目所处的根目录,即可从根目录中获取待转换线项目中的待转换文件。
进一步地,在获取框架转换工具之后,读取所述配置文件中的目录字段值,以定位待转换项目所处根目录,当用户在命令行中键入框架转换工具添加命令之后,执行该框架转换工具添加命令(示例性地,在第一前端框架版本为vue2,第二前端框架版本为vue3时,该框架转换工具添加命令可以为npm i pa-vue2-to-vue3--save-dev),也即将框架转换工具添加到待转换项目所处根目录下,并且默认自动加入并下载框架转换需要的依赖文件(如从第一前端框架版本转换至第二前端框架版本所需要的环境搭建文件等)。
S402:获取所述根目录下的所有待转换文件。
S403:对所述待转换文件进行基于函数关键字的函数匹配转换,得到所述初始转换结果。
具体地,在获取根目录下所有待转换文件之后,对所有待转换文件进行函数关键字搜索,对具有函数关键字对应的函数进行函数匹配转换,也即将具有函数关键字对应的函数,从第一前端框架版本的函数,转换为第二前端框架版本的函数;可以理解地,对于具有函数关键字对应的函数进行函数匹配转换,实质上是将其从第一前端框架版本的样式(如函数命名方式、格式等),转换成第二前端框架版本的样式。
示例性地,假设第一前端框架版本为vue.2,第二前端框架版本为vue.3;对于第一前端框架版本vue.2来说,beforMount()函数是适用的,但是在第二前端框架版本vue.3中没有该名称的函数,需要将beforeMount()函数匹配转换成onBeforeMount()函数,才可以在第二前端框架版本中被识别出来,上述函数关键字还包括updated()、destroyed()等,在此不再赘述。
S50:抽取所述初始转换结果中各转换变量,以及与各转换变量关联的转换函数,并将同一转换变量关联的转换函数整合至一个函数块中,得到各函数块。
可以理解地,在初始转换结果中存在许多函数,每一函数中存在各转换变量,将相关的转换变量和与其关联的转换函数设置在相近的位置,可以方便查阅和管理。因此抽取各转换变量,以及与各转换变量关联的转换函数之后,将同一个转换变量关联的转换函数整合至一个函数块中,以实现方便查阅和管理的效果。
S60:通过所述框架转换工具,加载与各函数块对应的应用程序接口,转换生成与所述待转换项目对应的,且具有所述第二前端框架版本的项目转换结果。
其中,应用程序接口(Composition Api)提供应用程序与开发人员基于第二前端框架版本得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。可以理解地,在通过框架转换工具加载各函数块对应的应用程序接口之后,即完全将具有第一前端框架版本的待转换项目,转换成具有第二前端框架版本的项目转换结果。
在一具体实施例中,如图5所示,步骤S60包括:
S601:通过所述框架转换工具检测各所述函数块中是否包含框架关键字。
示例性地,框架关键字可以为如reactive、ref、computed、watch等关键字,这些框架关键字需要引入相应的应用程序接口(composition api),可以进一步控制整个前端框架的大小,减小内存占用,并且框架关键字对应的应用程序接口的引入,是根据是否存在该关键字进行单独引入的,也即当存在该框架关键字时,单独引入与该框架关键字对应的应用程序接口,而其他不存在的框架关键字则不引入对应的应用程序接口,可以进一步减少系统内存占用。
S602:将包含所述框架关键字的函数块记录为待引入函数块。
S603:通过所述框架转换工具,将与待引入函数块对应的框架关键字匹配的应用程序接口加载至该待引入函数块中,将包含所述应用程序接口的各所述函数块关联记录为所述项目转换结果。
可以理解地,在经过步骤S30-S50之后,对第一前端框架版本的待转换项目已经完成了大部分的转换,而对于第一前端框架版本与第二前端框架版本还存在应用程序接口的区别,因此通过框架转换工具检测各函数块中是否包含框架关键字;将包含框架关键字的函数块记录为待引入函数块,通过框架转换工具,将与待引入函数块对应的框架关键字匹配的应用程序接口加载至该待引入函数块中,可以理解地,每一个待引入函数块均存在一个与其匹配的应用程序接口;在所有待引入函数块均加载与其对应的应用程序接口之后,表征具有第一前端框架版本的待转换项目,转换生成了具有第二前端框架版本的项目转换结果;可以理解地,项目转换结果即为将待转换项目从第一前端框架版本,转换成第二前端框架版本后得到的结果。
在本发明中,提供一种前端框架自动转换方法,可以使得用户在不了解新版本的框架语法等流程的前提下,仍然可以实现框架版本的升级,节省了用户的时间;并且通过上述方法可以避免人为转换过程中出现的错误,且转换后减小了存储内存,减小了系统存储压力。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在一实施例中,提供一种前端框架自动转换装置,该前端框架自动转换装置与上述实施例中前端框架自动转换方法一一对应。如图6所示,该前端框架自动转换装置包括配置文件设置模块10、脚手架工具获取模块20、代码核心包加载模块30、函数匹配转换模块40、函数整合模块50和程序接口加载模块60。各功能模块详细说明如下:
配置文件设置模块10,用于设置配置文件;所述配置文件中包含第一前端框架版本以及版本高于所述第一前端框架版本的第二前端框架版本,且所述第一前端框架版本与待转换项目关联;
脚手架工具获取模块20,用于获取预设脚手架工具,并检测所述预设脚手架工具的工具版本是否大于预设构建版本;
代码核心包加载模块30,用于在所述工具版本高于或等于所述预设构建版本时,加载与所述第二前端框架版本对应的代码核心包;
函数匹配转换模块40,用于获取所述待转换项目中的待转换文件以及框架转换工具,并根据所述代码核心包,通过所述框架转换工具对所述待转换文件进行函数匹配转换,得到初始转换结果;
函数整合模块50,用于抽取所述初始转换结果中各转换变量,以及与各转换变量关联的转换函数,并将同一转换变量关联的转换函数整合至一个函数块中,得到各函数块;
程序接口加载模块60,用于通过所述框架转换工具,加载与各函数块对应的应用程序接口,转换生成与所述待转换项目对应的,且具有所述第二前端框架版本的项目转换结果。
优选地,如图7所示,所述代码核心包加载模块30包括如下单元:
版本字段值获取单元301,用于自所述配置文件中,获取所述第二前端框架版本的版本字段值;
代码核心包加载单元302,用于执行代码核心包加载指令,以在所述待转换项目中加载与所述版本字段值关联的代码核心包;
框架文件检测单元303,用于检测所述待转换项目中是否包含预设转换框架文件;
信息提示单元304,用于在所述待转换项目中包含所述预设转换框架文件时,提示所述代码核心包加载成功。
优选地,如图8所示,所述函数匹配转换模块40包括如下单元:
目录字段值读取单元401,用于读取所述配置文件中目录字段值,以根据所述目录字段值获取所述待转换项目所处的根目录;
待转换文件获取单元402,用于获取所述根目录下的所有待转换文件;
函数匹配转换单元403,用于对所述待转换文件进行基于函数关键字的函数匹配转换,得到所述初始转换结果。
优选地,如图9所示,所述程序接口加载模块60包括如下单元:
框架关键字检测单元601,用于通过所述框架转换工具检测各所述函数块中是否包含框架关键字;
函数块记录单元602,用于在通过所述框架转换工具检测到各所述函数块中包含框架关键字时,将包含所述框架关键字的函数块记录为待引入函数块;
程序接口加载单元603,用于通过所述框架转换工具,将与待引入函数块对应的框架关键字匹配的应用程序接口加载至该待引入函数块中,将包含所述应用程序接口的各所述函数块关联记录为所述项目转换结果。
优选地,所述程序接口加载模块60还包括如下单元:
指令发送单元,用于在通过所述框架转换工具检测到各所述函数块中不包含框架关键字时,发送前端框架转换成功指令至预设接收方。
优选地,所述前端框架自动转换装置还包括:
版本升级模块,用于在所述工具版本低于所述预设构建版本时,执行脚手架工具升级命令,以令所述预设脚手架工具的工具版本高于或等于所述预设构建版本。
关于前端框架自动转换装置的具体限定可以参见上文中对于前端框架自动转换方法的限定,在此不再赘述。上述前端框架自动转换装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储上述实施例中前端框架自动转换方法所使用到的数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种前端框架自动转换方法。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例中前端框架自动转换方法。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述实施例中前端框架自动转换方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种前端框架自动转换方法,其特征在于,包括:
设置配置文件;所述配置文件中包含第一前端框架版本以及版本高于所述第一前端框架版本的第二前端框架版本,且所述第一前端框架版本与待转换项目关联;
获取预设脚手架工具,并检测所述预设脚手架工具的工具版本是否大于预设构建版本;
在所述工具版本高于或等于所述预设构建版本时,加载与所述第二前端框架版本对应的代码核心包;
获取所述待转换项目中的待转换文件以及框架转换工具,并根据所述代码核心包,通过所述框架转换工具对所述待转换文件进行函数匹配转换,得到初始转换结果;
抽取所述初始转换结果中各转换变量,以及与各转换变量关联的转换函数,并将同一转换变量关联的转换函数整合至一个函数块中,得到各函数块;
通过所述框架转换工具,加载与各函数块对应的应用程序接口,转换生成与所述待转换项目对应的,且具有所述第二前端框架版本的项目转换结果。
2.如权利要求1所述的前端框架自动转换方法,其特征在于,所述加载与所述第二前端框架版本对应的代码核心包,包括:
自所述配置文件中,获取所述第二前端框架版本的版本字段值;
执行代码核心包加载指令,以在所述待转换项目中加载与所述版本字段值关联的代码核心包;
检测所述待转换项目中是否包含预设转换框架文件;
在所述待转换项目中包含所述预设转换框架文件时,提示所述代码核心包加载成功。
3.如权利要求1所述的前端框架自动转换方法,其特征在于,所述获取所述待转换项目中的待转换文件以及框架转换工具,并根据所述代码核心包,通过所述框架转换工具对所述待转换文件进行函数匹配转换,得到初始转换结果,包括:
读取所述配置文件中目录字段值,以根据所述目录字段值获取所述待转换项目所处的根目录;
获取所述根目录下的所有待转换文件;
对所述待转换文件进行基于函数关键字的函数匹配转换,得到所述初始转换结果。
4.如权利要求1所述的前端框架自动转换方法,其特征在于,所述通过所述框架转换工具,加载与各函数块对应的应用程序接口,转换生成与所述待转换项目对应的,且具有所述第二前端框架版本的项目转换结果,包括:
通过所述框架转换工具检测各所述函数块中是否包含框架关键字;
在通过所述框架转换工具检测到各所述函数块中包含框架关键字时,将包含所述框架关键字的函数块记录为待引入函数块;
通过所述框架转换工具,将与待引入函数块对应的框架关键字匹配的应用程序接口加载至该待引入函数块中,将包含所述应用程序接口的各所述函数块关联记录为所述项目转换结果。
5.如权利要求4所述的前端框架自动转换方法,其特征在于,所述通过所述框架转换工具检测各所述函数块中是否包含框架关键字之后,还包括:
在通过所述框架转换工具检测到各所述函数块中不包含框架关键字时,发送前端框架转换成功指令至预设接收方。
6.如权利要求1所述的前端框架自动转换方法,其特征在于,所述检测所述预设脚手架工具的工具版本是否大于预设构建版本之后,还包括:
在所述工具版本低于所述预设构建版本时,执行脚手架工具升级命令,以令所述预设脚手架工具的工具版本高于或等于所述预设构建版本。
7.一种前端框架自动转换装置,其特征在于,包括:
配置文件设置模块,用于设置配置文件;所述配置文件中包含第一前端框架版本以及版本高于所述第一前端框架版本的第二前端框架版本,且所述第一前端框架版本与待转换项目关联;
脚手架工具获取模块,用于获取预设脚手架工具,并检测所述预设脚手架工具的工具版本是否大于预设构建版本;
代码核心包加载模块,用于在所述工具版本高于或等于所述预设构建版本时,加载与所述第二前端框架版本对应的代码核心包;
函数匹配转换模块,用于获取所述待转换项目中的待转换文件以及框架转换工具,并根据所述代码核心包,通过所述框架转换工具对所述待转换文件进行函数匹配转换,得到初始转换结果;
函数整合模块,用于抽取所述初始转换结果中各转换变量,以及与各转换变量关联的转换函数,并将同一转换变量关联的转换函数整合至一个函数块中,得到各函数块;
程序接口加载模块,用于通过所述框架转换工具,加载与各函数块对应的应用程序接口,转换生成与所述待转换项目对应的,且具有所述第二前端框架版本的项目转换结果。
8.如权利要求7所述的前端框架自动转换装置,其特征在于,所述代码核心包加载模块包括:
版本字段值获取单元,用于获取所述第二前端框架版本的版本字段值;
代码核心包加载单元,用于根据所述版本字段值,执行加载与所述第二前端框架版本对应的代码核心包的指令,以在所述待转换项目中加载所述代码核心包;
框架文件检测单元,用于检测所述待转换项目中是否包含预设转换框架文件;
信息提示单元,用于在所述待转换项目中包含所述预设转换框架文件时,提示所述代码核心包加载成功。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述前端框架自动转换方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述前端框架自动转换方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011355935.3A CN112306533A (zh) | 2020-11-27 | 2020-11-27 | 前端框架自动转换方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011355935.3A CN112306533A (zh) | 2020-11-27 | 2020-11-27 | 前端框架自动转换方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112306533A true CN112306533A (zh) | 2021-02-02 |
Family
ID=74487218
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011355935.3A Pending CN112306533A (zh) | 2020-11-27 | 2020-11-27 | 前端框架自动转换方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112306533A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112860231A (zh) * | 2021-03-11 | 2021-05-28 | 中国银行股份有限公司 | 前端框架转换方法及装置 |
CN113254040A (zh) * | 2021-06-01 | 2021-08-13 | 康键信息技术(深圳)有限公司 | 前端框架更新方法、装置、设备及存储介质 |
CN113901143A (zh) * | 2021-10-13 | 2022-01-07 | 北京德塔精要信息技术有限公司 | 前端跨框架通信方法及前端框架结构 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140208304A1 (en) * | 2013-01-24 | 2014-07-24 | Oracle International Corporation | Methods and systems for dynamic upgrade of an access manager |
CN110333880A (zh) * | 2018-03-29 | 2019-10-15 | 杭州海康威视数字技术股份有限公司 | 一种配置更新方法、装置、设备及存储介质 |
US20200057622A1 (en) * | 2018-08-14 | 2020-02-20 | Red Hat Israel, Ltd. | Management of updates to externally managed libraries |
-
2020
- 2020-11-27 CN CN202011355935.3A patent/CN112306533A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140208304A1 (en) * | 2013-01-24 | 2014-07-24 | Oracle International Corporation | Methods and systems for dynamic upgrade of an access manager |
CN110333880A (zh) * | 2018-03-29 | 2019-10-15 | 杭州海康威视数字技术股份有限公司 | 一种配置更新方法、装置、设备及存储介质 |
US20200057622A1 (en) * | 2018-08-14 | 2020-02-20 | Red Hat Israel, Ltd. | Management of updates to externally managed libraries |
Non-Patent Citations (1)
Title |
---|
CODEMAN: "vue.js - vue1.0升级到2.0", pages 1 - 5, Retrieved from the Internet <URL:https://segmentfault.com/a/1190000011325941> * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112860231A (zh) * | 2021-03-11 | 2021-05-28 | 中国银行股份有限公司 | 前端框架转换方法及装置 |
CN113254040A (zh) * | 2021-06-01 | 2021-08-13 | 康键信息技术(深圳)有限公司 | 前端框架更新方法、装置、设备及存储介质 |
CN113254040B (zh) * | 2021-06-01 | 2023-10-20 | 康键信息技术(深圳)有限公司 | 前端框架更新方法、装置、设备及存储介质 |
CN113901143A (zh) * | 2021-10-13 | 2022-01-07 | 北京德塔精要信息技术有限公司 | 前端跨框架通信方法及前端框架结构 |
CN113901143B (zh) * | 2021-10-13 | 2022-06-28 | 北京德塔精要信息技术有限公司 | 前端跨框架通信方法及前端框架结构 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112306533A (zh) | 前端框架自动转换方法、装置、计算机设备及存储介质 | |
CN110941546A (zh) | Web页面用例的自动化测试方法、装置、设备及存储介质 | |
CN107861713B (zh) | 数据调用方法、装置及计算机可读存储介质 | |
CN109814854B (zh) | 项目框架生成方法、装置、计算机设备和存储介质 | |
CN111078339B (zh) | 界面元素定位方法、装置、计算机设备和存储介质 | |
CN110209652A (zh) | 数据表迁移方法、装置、计算机设备和存储介质 | |
CN109361628B (zh) | 报文组装方法、装置、计算机设备和存储介质 | |
CN111309593A (zh) | Json接口校验的方法、装置、设备及计算机可读存储介质 | |
CN111638873A (zh) | 程序代码的生成方法、装置、计算机设备及存储介质 | |
KR20080039080A (ko) | 이종언어편집 라이브러리의 인터페이스 기능이 구비된단말장비, api호출방법 및 컴파일함수생성방법 | |
CN110750443A (zh) | 网页测试的方法、装置、计算机设备及存储介质 | |
CN110688305B (zh) | 测试环境同步方法、装置、介质、电子设备 | |
CN112181423A (zh) | 基于配置文件的项目构建方法、装置、计算机设备及介质 | |
CN117527896A (zh) | 一种多系统数据对接第三方电子档案的方法及系统 | |
CN111857752A (zh) | 一种PostgreSQL数据库安装方法、装置及设备 | |
CN111176720A (zh) | 一种实现在多系统中运行应用程序的控制方法、控制装置 | |
CN111949301B (zh) | 应用程序热更新方法、装置和计算机可读存储介质 | |
CN111177624B (zh) | 网站前后端通讯方法、装置、计算机设备和存储介质 | |
CN114171205A (zh) | 医疗数据处理方法、装置以及数字模型编辑器 | |
CN110286894B (zh) | 脚本生成方法、装置、计算机设备和存储介质 | |
CN112527315A (zh) | 编程语言函数自动转化方法、装置、计算机设备及介质 | |
CN112540755A (zh) | 一种基于前端的组件处理方法、装置、设备及存储介质 | |
CN112783866A (zh) | 数据读取方法、装置、计算机设备和存储介质 | |
CN112540799A (zh) | 启动数据的管理方法、系统、终端设备及存储介质 | |
CN111857744A (zh) | 一种超融合系统的安装方法、系统、设备以及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |