页面开发指令的执行方法、装置、计算机设备及存储介质与流程

文档序号:29806928发布日期:2022-04-23 22:44阅读:99来源:国知局
页面开发指令的执行方法、装置、计算机设备及存储介质与流程

1.本公开涉及页面开发技术领域,具体而言,涉及一种页面开发指令的执行方法、装置、计算机设备及存储介质。


背景技术:

2.目前,随着页面前端技术不断地更新迭代,为了方便页面程序的开发工作,会预先设置开发套件,并基于开发套件实现页面程序的开发。但是由于页面程序中的不同功能的开发阶段不同,且在开发过程中,开发套件也在持续的迭代,因此无法保证不同功能之间的开发套件支持能力是相同的,导致了页面程序的不同功能存在支持能力不对齐的问题。


技术实现要素:

3.本公开实施例至少提供一种页面开发指令的执行方法、装置、计算机设备及存储介质。
4.第一方面,本公开实施例提供了一种页面开发指令的执行方法,包括:接收对应于目标开发套件的开发指令,基于服务器中存储的所述目标开发套件的第一套件信息,对开发终端存储的所述目标开发套件的第二套件信息进行同步处理;响应于所述同步处理成功,基于对所述第二套件信息进行同步处理后的目标开发套件,执行所述开发指令。
5.一种可选的实施方式中,所述开发指令包括以下至少一种:本地的调试服务器的启动指令、项目打包指令、项目测试指令以及项目发布指令。
6.一种可选的实施方式中,套件信息包括:所述目标开发套件的依赖环境信息、和/或,所述目标开发套件的配置信息。
7.一种可选的实施方式中,套件信息包括:所述目标开发套件的依赖环境信息;所述基于服务器中存储的所述目标开发套件的第一套件信息,对开发终端存储的所述目标开发套件的第二套件信息进行同步处理,包括:从所述服务器中获取所述目标开发套件的第一依赖环境信息;将所述第一依赖环境信息、与开发终端存储的所述目标开发套件的依赖环境信息进行匹配;响应于所述第一依赖环境信息和所述第二依赖环境信息不同,基于所述第一依赖环境信息对所述第二依赖环境信息进行更新。
8.一种可选的实施方式中,所述基于所述第一依赖环境信息对所述第二依赖环境信息进行更新,包括:基于所述第一依赖环境信息,对所述第二依赖环境信息进行同步处理;以及基于同步处理后的所述第二依赖环境,对所述开发终端存储的所述目标开发套件的依赖环境进行重安装处理和/或初始化处理。
9.一种可选的实施方式中,套件信息包括:所述目标开发套件的配置信息;所述基于服务器中存储的所述目标开发套件的第一套件信息,对开发终端存储的所述目标开发套件的第二套件信息进行同步处理,包括:从所述服务器中获取所述目标开发套件的第一配置信息;基于所述第一配置信息对应配置项的属性信息、以及所述第一配置信息,对开发终端存储的所述目标开发套件的第二配置信息进行同步处理;所述属性信息用于指示对应配置
项的配置信息的同步方式。
10.一种可选的实施方式中,所述从所述服务器中获取所述目标开发套件的第一配置信息,包括:获取开发终端存储的所述目标开发套件的配置信息列表;所述配置信息列表包括:至少一个第二配置文件分别对应的文件名称;每个第二配置文件中包括对至少一个配置项的第二配置信息;向所述服务器发送所述配置信息列表;接收所述服务器基于所述配置信息列表反馈的与所述第二配置文件对应的第一配置文件;所述第一配置文件包括:对所述至少一个配置项的所述第一配置信息。
11.一种可选的实施方式中,所述属性信息包括:与所述配置项对应的目标同步方式;所述基于所述第一配置信息对应配置项的属性信息、以及所述第一配置信息,对开发终端存储的所述目标开发套件的第二配置信息进行同步处理,包括:针对每个第二配置文件,将与每个第二配置文件对应的第一配置文件中每个配置项对应的第一配置信息、与所述每个配置项对应的第二配置信息进行比对;响应于任一配置项的第一配置信息、和所述任一配置项对应的第二配置信息不同,确定对所述任一配置项对应的第二配置信息的目标同步方式;利用所述任一配置项的第一配置信息,对所述任一配置项对应的第二配置信息执行所述目标同步方式指示的同步处理。
12.一种可选的实施方式中,所述目标同步方式包括下述任一种:替换、合并、以及忽略。
13.一种可选的实施方式中,所述属性信息还包括:所述配置项对应的标识;所述基于所述第一配置信息对应配置项的属性信息、以及所述第一配置信息,对开发终端存储的所述目标开发套件的第二配置信息进行同步处理,还包括:基于所述配置项对应的标识,将所述第一配置文件、与对应的第二配置文件进行配置项的匹配;
14.响应于所述第一配置文件中包括的第一配置项并未存在于对应的第二配置文件中,则将所述第一配置项、以及所述第一配置项对应的第一配置信息添加至所述第二配置文件;响应于与所述第一配置文件对应的第二配置文件中包括的第二配置项并未存在于所述第一配置文件中,将所述第二配置项、以及所述第二配置项对应的第二配置信息从所述第二配置文件中删除。
15.第二方面,本公开实施例还提供一种页面开发指令的执行装置,包括:
16.同步模块,用于接收对应于目标开发套件的开发指令,基于服务器中存储的所述目标开发套件的第一套件信息,对开发终端存储的所述目标开发套件的第二套件信息进行同步处理;
17.执行模块,用于响应于所述同步处理成功,基于对所述第二套件信息进行同步处理后的目标开发套件,执行所述开发指令。
18.一种可选的实施方式中,所述开发指令包括以下至少一种:本地的调试服务器的启动指令、项目打包指令、项目测试指令以及项目发布指令。
19.一种可选的实施方式中,套件信息包括:所述目标开发套件的依赖环境信息、和/或,所述目标开发套件的配置信息。
20.一种可选的实施方式中,套件信息包括:所述目标开发套件的依赖环境信息;所述同步模块,在所述基于服务器中存储的所述目标开发套件的第一套件信息,对开发终端存储的所述目标开发套件的第二套件信息进行同步处理时,用于从所述服务器中获取所述目
标开发套件的第一依赖环境信息;将所述第一依赖环境信息、与开发终端存储的所述目标开发套件的依赖环境信息进行匹配;响应于所述第一依赖环境信息和所述第二依赖环境信息不同,基于所述第一依赖环境信息对所述第二依赖环境信息进行更新。
21.一种可选的实施方式中,所述同步模块,在所述基于所述第一依赖环境信息对所述第二依赖环境信息进行更新时,用于基于所述第一依赖环境信息,对所述第二依赖环境信息进行同步处理;以及基于同步处理后的所述第二依赖环境,对所述开发终端存储的所述目标开发套件的依赖环境进行重安装处理和/或初始化处理。
22.一种可选的实施方式中,套件信息包括:所述目标开发套件的配置信息;所述同步模块,在所述基于服务器中存储的所述目标开发套件的第一套件信息,对开发终端存储的所述目标开发套件的第二套件信息进行同步处理时,用于从所述服务器中获取所述目标开发套件的第一配置信息;基于所述第一配置信息对应配置项的属性信息、以及所述第一配置信息,对开发终端存储的所述目标开发套件的第二配置信息进行同步处理;所述属性信息用于指示对应配置项的配置信息的同步方式。
23.一种可选的实施方式中,所述同步模块,在所述从所述服务器中获取所述目标开发套件的第一配置信息时,用于获取开发终端存储的所述目标开发套件的配置信息列表;所述配置信息列表包括:至少一个第二配置文件分别对应的文件名称;每个第二配置文件中包括对至少一个配置项的第二配置信息;向所述服务器发送所述配置信息列表;接收所述服务器基于所述配置信息列表反馈的与所述第二配置文件对应的第一配置文件;所述第一配置文件包括:对所述至少一个配置项的所述第一配置信息。
24.一种可选的实施方式中,所述属性信息包括:与所述配置项对应的目标同步方式;所述同步模块,在所述基于所述第一配置信息对应配置项的属性信息、以及所述第一配置信息,对开发终端存储的所述目标开发套件的第二配置信息进行同步处理时,用于针对每个第二配置文件,将与每个第二配置文件对应的第一配置文件中每个配置项对应的第一配置信息、与所述每个配置项对应的第二配置信息进行比对;响应于任一配置项的第一配置信息、和所述任一配置项对应的第二配置信息不同,确定对所述任一配置项对应的第二配置信息的目标同步方式;利用所述任一配置项的第一配置信息,对所述任一配置项对应的第二配置信息执行所述目标同步方式指示的同步处理。
25.一种可选的实施方式中,所述目标同步方式包括下述任一种:替换、合并、以及忽略。
26.一种可选的实施方式中,所述属性信息还包括:所述配置项对应的标识;所述同步模块,在所述基于所述第一配置信息对应配置项的属性信息、以及所述第一配置信息,对开发终端存储的所述目标开发套件的第二配置信息进行同步处理时,还用于:基于所述配置项对应的标识,将所述第一配置文件、与对应的第二配置文件进行配置项的匹配;响应于所述第一配置文件中包括的第一配置项并未存在于对应的第二配置文件中,则将所述第一配置项、以及所述第一配置项对应的第一配置信息添加至所述第二配置文件;响应于与所述第一配置文件对应的第二配置文件中包括的第二配置项并未存在于所述第一配置文件中,将所述第二配置项、以及所述第二配置项对应的第二配置信息从所述第二配置文件中删除。
27.一种可选的实施方式中,所述目标同步方法包括:替换;所述同步模块,在所述利
用所述任一配置项的第一配置信息,对所述任一配置项对应的第二配置信息执行所述目标同步方式指示的同步处理时,用于将所述任一配置项对应的第二配置信息替换为所述任一配置项对应的第一配置信息,得到新的第二配置信息。
28.一种可选的实施方式中,所述目标同步方法包括:合并;所述同步模块,在所述利用所述任一配置项的第一配置信息,对所述任一配置项对应的第二配置信息执行所述目标同步方式指示的同步处理时,用于将所述任一配置项对应的第二配置信息与所述任一配置项对应的第一配置信息进行合并,得到新的第二配置信息。
29.第三方面,本公开可选实现方式还提供一种计算机设备,处理器、存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述处理器用于执行所述存储器中存储的机器可读指令,所述机器可读指令被所述处理器执行时,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
30.第四方面,本公开可选实现方式还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被运行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
31.本公开实施例通过接收对应于目标开发套件的开发指令,将获取服务器存储的目标开发套件的第一套件信息,基于所述第一套件信息,对开发终端存储的目标开发套件的第二套件信息进行同步处理,响应于对开发终端存储的目标开发套件的第二套信息同步处理成功,基于对所述第二套件信息进行同步处理后的目标开发套件执行开发指令,从而在执行开发指令之前,利用服务器中存储的目标开发套件的第一套件信息,对开发终端存储的开发套件的第二套件信息进行了同步处理,使得开发套件的套件信息能够在开发不同的项目时的支持能力保持一致性,减少页面程序的不同功能存在的支持能力不对齐的问题。
32.关于上述页面开发指令的执行装置、计算机设备、及计算机可读存储介质的效果描述参见上述页面开发指令的执行方法的说明,这里不再赘述。
33.为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
34.为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
35.图1示出了本公开实施例所提供的一种页面开发指令的执行方法的流程图;
36.图2示出了本公开实施例所提供的一种基于所述第一配置信息对应配置项的属性信息、以及所述第一配置信息,对开发终端存储的所述目标开发套件的第二配置信息进行同步处理具体示例的流程图;
37.图3示出了本公开实施例所提供的一种页面开发指令的执行的具体流程示例的示意图;
38.图4示出了本公开实施例所提供的一种页面开发指令的执行装置的示意图;
39.图5示出了本公开实施例所提供的一种计算机设备的示意图。
具体实施方式
40.为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
41.经研究发现,在页面程序开发工作中,在对软件进行开发阶段,由于web前端技术在不断更新且软件开发的周期较长,当开发人员对软件中的每个功能进行开发时,每个功能开发的进度不同以及每个功能对应的开发人员可能不同;且在开发过程中,所用的开发套件也在不断的进行迭代,造成开发套件的套件信息不一致,导致开发套件对不同功能的支持能力不同,进而页面程序的不同功能存在的支持能力不对齐的问题。
42.基于上述研究,本公开提供了一种页面开发指令的执行方法,通过在执行开发指令之前,利用服务器中存储的目标开发套件的第一套件信息,对开发终端存储的开发套件的第二套件信息进行了同步处理,使得开发套件的套件信息能够在开发不同的项目时的支持能力保持一致性,减少页面程序的不同功能存在的支持能力不对齐的问题。
43.针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本公开针对上述问题所提出的解决方案,都应该是发明人在本公开过程中对本公开做出的贡献。
44.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
45.为便于对本实施例进行理解,首先对本公开实施例所公开的一种页面开发指令的执行方法进行详细介绍,本公开实施例所提供的页面开发指令的执行方法的执行主体一般为具有一定计算能力的计算机设备,该计算机设备例如包括:终端设备或服务器或其它处理设备,终端设备可以为用户设备(user equipment,ue)、移动设备、用户终端、终端等。在一些可能的实现方式中,该页面开发指令的执行方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
46.下面以本公开实施例提供的页面开发指令的执行方法加以说明。
47.参见图1所示,为本公开实施例提供的页面开发指令的执行方法的流程图,所述方法包括步骤s101~s102,其中:
48.s101:接收对应于目标开发套件的开发指令,基于服务器中存储的目标开发套件的第一套件信息,对开发终端存储的目标开发套件的第二套件信息进行同步处理;
49.s102:响应于同步处理成功,基于对第二套件信息进行同步处理后的目标开发套件,执行开发指令。
50.本公开实施例通过接收对应于目标开发套件的开发指令,将获取服务器存储的目标开发套件的第一套件信息,基于第一套件信息,对开发终端存储的目标开发套件的第二
套件信息进行同步处理,响应于对开发终端存储的目标开发套件的第二套信息同步处理成功,基于对第二套件信息进行同步处理后的目标开发套件执行开发指令,从而在执行开发指令之前,利用服务器中存储的目标开发套件的第一套件信息,对开发终端存储的开发套件的第二套件信息进行了同步处理,使得开发套件的套件信息能够在开发不同的项目时的支持能力保持一致性,减少页面程序的不同功能存在的支持能力不对齐的问题。
51.下面对上述s101~s102步骤进行详细说明
52.针对上述s101,目标开发套件是用来辅助开发人员进行web页面程序开发的工具,其例如包括:项目结构的规范,项目框架能力的规范;针对项目调试、项目上线等工作,通过目标开发套件,方便开发人员对页面程序开展分析需求、开发需求、测试需求以及发布需求的工作。
53.对开发套件的开发指令例如以下至少一种:本地的调试服务器的启动指令、项目打包指令、项目测试指令以及项目发布指令。
54.其中,本地的调试服务器的启动指令,可以用来软件在上线前,通过启动指令启动本地的服务器进行相应的调试;项目打包指令,可以用来软件对应的程序代码在编写完成后进行打包的指令;项目测试指令,可以用来在对软件进行测试性能时,调用的测试指令;项目发布指令,可以用来在对软件测试完成后,将软件对应的程序代码发布至远程服务器,完成软件的上线工作。
55.目标开发套件对应有套件信息。在本公开实施例中,目标开发套件在服务器中的套件信息称为第一套件信息;在开发终端中的套件信息称为第二套件信息。
56.套件信息例如包括:目标开发套件的依赖环境信息、和/或,目标开发套件的配置信息。
57.a:针对套件信息包括:目标开发套件的依赖环境信息的情况:
58.目标开发套件的依赖环境信息即页面程序对应的程序代码在运行时,需要在特定的依赖环境或者运行环境中才可以成功运行,当开发程序的依赖环境未成功安装或者依赖环境信息出现错误将导致程序代码在运行时出现错误。
59.其中,依赖环境例如包括:线下的测试环境、线上的预览环境、生产环境等等。
60.其中依赖环境信息包括依赖环境的版本信息,依赖环境版本不一致即程序代码运行环境版本不同,程序代码在该依赖环境运行可能出现错误;例如,a程序代码适用于依赖环境的第一版本运行,而在该依赖环境的第二版本上运行可能出现错误。
61.在执行开发指令之前,需要对开发终端存储的目标开发套件的依赖环境进行同步处理,针对目标开发套件的依赖环境信息,本公开实施例提供了一种对开发套件的第二依赖环境进行同步处理的具体示例,包括:
62.从服务器中获取目标开发套件的第一依赖环境信息;
63.将第一依赖环境信息、与开发终端保存的目标开发套件的第二依赖环境信息进行匹配;
64.响应于第一依赖环境信息和第二依赖环境信息不同,基于第一依赖环境信息对第二依赖环境信息进行更新。
65.示例性的,开发终端响应于接收到开发指令,向服务器发送获取预设套件第一依赖环境信息的获取请求,第一依赖环境信息是服务器保存的目标开发套件的最新依赖环境
信息;在该获取请求中,可以携带目标开发套件的标识信息;服务器在接收到该获取请求后,基于该标识信息,确定对应的目标开发套件,并获取与该目标开发套件对应的第一依赖环境信息,将第一依赖环境信息返回给开发终端。
66.另外开发终端还可以从本地读取目标开发套件对应的第二依赖环境信息。
67.在接收到服务器返回的第一依赖环境信息后,将第一环境信息与第二环境信息进行匹配。
68.在将第一环境信息与第二环境信息进行匹配时,例如可以将两者的版本信息进行匹配,若第一环境依赖信息与第二环境信息不同,则基于第一环境信息对第二依赖环境信息进行更新。
69.在基于第一环境信息对第二依赖环境信息进行更新时,例如可以采用下述方式:
70.基于第一依赖环境信息,对第二依赖环境信息进行同步处理;以及
71.基于同步处理后的第二依赖环境,对开发终端存储的目标开发套件的依赖环境进行重安装处理和/或初始化处理。
72.其中,基于第一依赖环境信息,对第二依赖环境信息进行同步处理,包括:将开发终端保存目标开发套件的依赖环境版本信息更新至与服务器保存的目标开发套件的依赖环境版本信息相同。
73.示例性的,每个项目的根目录下面,一般都有一个package.json文件,该文件定义了这个项目所需要的各种模块,项目的依赖环境信息以及项目的配置信息;开发终端响应于接收到开发指令,通过获取请求从服务器拉取第一package.json文件,第一package.json文件包括最新的开发环境依赖版本的列表;另外,开发终端还可以通过调用npm.list命令获取本地保存的第二package.json文件,第二package.json文件包括本地保存的开发环境依赖版本的列表。在得到第一package.json文件和第二package.json文件后,将第二package.json文件中保存的开发依赖环境版本列表与第一package.json文件中保存的最新的开发环境依赖版本的列表进行比对,若本地保存的开发依赖环境版本列表与最新的开发环境依赖版本的列表相同,则不需要对本地保存的开发依赖环境版本列表进行更新;若本地保存的开发依赖环境版本列表与最新的开发环境依赖版本的列表不相同,则修改本地第二package.json文件,将本地保存的开发依赖环境版本列表同步成从服务器获取的第一package.json文件最新的开发环境依赖版本的列表。
74.示例性的,针对本地保存的开发依赖环境版本列表与最新的开发环境依赖版本的列表不相同,则需要对本地保存的开发依赖环境版本列表进行更新;例如a目标开发套件的本地保存的依赖环境版本的列表为1.0版本,当前版本不支持a目标开发套件的运行,将从服务器获取a目标开发套件的最新的开发环境依赖版本的列表为2.0版本,将本地保存的依赖环境版本的列表为1.0版本更新为最新的开发环境依赖版本的列表为2.0版本。
75.另外,在还会对开发终端存储的目标开发套件的依赖环境进行重安装处理和/或初始化处理。
76.这样,实现了开发终端本地部署的依赖环境与开发依赖环境列表指示的依赖环境的同,满足后续的开发需求。
77.例如,将第二依赖环境信息为1.0版本更新为第一依赖环境信息为2.0版本,对2.0版本进行初始化操作,或者对2.0版本进行重新安装处理,使得第二依赖环境更新为最新的
或者标准的依赖环境。
78.另外,响应于第一依赖环境信息和第二依赖环境信息相同,则不对第二依赖环境信息进行更新处理。
79.b:针对套件信息包括:目标开发套件的配置信息的情况:
80.目标开发套件的配置信息,保存在目标开发套件对应的配置文件中;其中每个配置文件包括至少一个配置项,而至少一个配置项包括至少一条对应的配置信息,
81.配置项例如包括:项目的代理配置、项目的程序代码打包配置、上线的流程配置等中至少一种。配置项用于保证页面程序的正常运行,例如,利用目标开发套件a开发的软件程序需要对某个配置文件中的某配置项a才可正常运行;若该配置项a对应的配置信息丢失,软件程序将运行失败;或者配置信息不支持某些功能模块的运行,例如目标开发套件a中的配置项a不支持功能模块b的运行,需要对配置项对应的配置信息进行更新处理才可以运行功能模块b。
82.本公开实施例提供了对开发套件的第二配置信息进行同步处理的具体示例,包括:
83.从服务器中获取目标开发套件的第一配置信息;
84.基于第一配置信息对应配置项的属性信息、以及第一配置信息,对开发终端存储的目标开发套件的第二配置信息进行同步处理;
85.属性信息用于指示对应配置项的配置信息的同步方式。
86.在具体实施中,在从服务器获取目标开发套件的第一配置信息时,例如可以采用下述方式:
87.获取开发终端存储的目标开发套件的配置信息列表;配置信息列表包括:至少一个第二配置文件分别对应的文件名称;每个第二配置文件中包括对至少一个配置项的第二配置信息;
88.向服务器发送配置信息列表;
89.接收服务器基于配置信息列表反馈的与第二配置文件对应的第一配置文件;第一配置文件包括:对至少一个配置项的第一配置信息。
90.其中,服务器中包括了多个配置文件,以及接口;接口可以用于接收开发终端发送的配置信息列表,开发终端发送的配置信息列表中包括第二配置文件以及第二配置文件对应的文件名称,服务器通过该配置信息列表中的文件名称,与服务器中存储的多个配置文件的文件名称进行匹配,得到与第二配置文件具有相同名称的第一配置文件,并向开发终端返回第一配置文件。
91.第一配置文件与第二配置文件对应,例如包括:第一配置文件和第二配置文件具有相同的文件名称。
92.开发终端在接收到第一配置文件后,将第一配置文件对应的第一配置信息与第二配置文件对应的第二配置信息进行比对,确定第二配置信息与第一配置信息是否相同。
93.示例性的,开发终端在获取本地存储的目标开发套件的配置信息列表时,可以通过扫描本地存储空间中保存的开发套件的目录,获取本地存储的目标开发套件的配置信息列表。
94.针对服务器返回的第一配置文件中的至少一个配置项对应的第一配置信息,与第
二配置文件中的至少一个配置项对应第二配置信息进行比对,基于对比结果,确定是否进行同步处理;若对比结果为第一配置信息与第二配置信息相同,则完成了配置信息更新,则执行开发指令具体方式如下步骤s102;若对比结果为第一配置信息与第二配置信息不相同,则对第二配置信息进行更新,具体的更新方式如下述实施例。本公开实施例提供了一种基于第一配置信息对应配置项的属性信息、以及第一配置信息,对开发终端存储的目标开发套件的第二配置信息进行同步处理具体示例,包括步骤s201~s203,其中:
95.s201:针对每个第二配置文件,将与每个第二配置文件对应的第一配置文件中任一配置项对应的第一配置信息、与任一配置项对应的第二配置信息进行比对;
96.s202:响应于任一配置项对应的第一配置信息、和任一配置项对应的第二配置信息不同,确定对任一配置项对应的第二配置信息的目标同步方式。
97.在具体的实施方式中,在一种可能的实施方式中,可以在开发终端中设置合并引擎,通过合并引擎来执行第一配置信息和第二配置信息之间的同步过程。
98.其中,在利用合并引擎在执行第一配置信息和第二配置信息之间的同步时,开发终端将各个配置项对应的目标同步方式发送至合并引擎,合并引擎根据接收到的目标同步方式对该配置项对应的第一配置信息和第二配置信息进行同步。
99.其中,任一配置项的目标同步方式包括下述任一种:替换、合并、以及忽略。
100.s203:利用任一配置项对应的第一配置信息,对任一配置项对应的第二配置信息执行目标同步方式指示的同步处理。
101.示例性的,合并引擎对第一配置文件和第二配置文件中对应配置项一一进行匹配,确定第一配置文件和第二配置文件中,配置信息存在差异的差异配置项。然后,根据该差异配置项对应的目标同步方式,利用该差异配置项对应的第一配置信息,对其第二配置信息进行同步处理。
102.其中,在目标同步方式包括替换的情况下:
103.针对目标同步方法包括:替换;利用任一配置项对应的第一配置信息,对任一配置项对应的第二配置信息执行目标同步方式指示的同步处理,包括:将所任一配置项对应的第二配置信息替换为任一配置项对应的第一配置信息,得到新的第二配置信息。
104.示例性的,针对差异配置项m1,是一个比较核心的配置项(如底层打包工具配置),用户不可以自行修改,则使用替换方式来做同步处理;例如:服务器上的配置为css:'less',而开发终端的配置为css:'scss',替换后的结果为css:'less'。
105.在目标同步方法包括合并的情况下:利用任一配置项对应的第一配置信息,对任一配置项对应的第二配置信息执行目标同步方式指示的同步处理,包括:将任一配置项对应的第二配置信息与任一配置项对应的第一配置信息进行合并,得到新的第二配置信息。
106.示例性的,针对差异配置项m2,是一个较开放的,允许用户合并的配置(如入口列表配置),用户在开发终端可以对其进行合并;例如:服务器上的配置是entry:[a],而开发终端用户配置的是entry:[b,c];合并后即entry:[a,b,c]
[0107]
在目标同步方法包括忽略的情况下:利用任一配置项对应的第一配置信息未有标准约束,不对任一配置项对应的第二配置信息进行任何处理,也即无需对第二配置信息进行任何的改变。
[0108]
示例性的,针对差异配置项m3,是个开放的配置,在服务器上不针对该配置做标准
化约束处理,允许用户直接在开发终端对其定义,不做任何同步处理。
[0109]
示例性的,基于上述任一种目标同步方式,基于对第二配置信息执行任一种目标同步方式指示的同步处理,响应于第二配置信息同步处理成功后,完成第二配置信息的同步处理。
[0110]
在另外一种实施例中,还可能存在第一配置文件中的配置项和第二配置文件中的配置项不同的情况。针对第二配置文件中的对应的配置项与第一配置文件对应的配置项的不同的情况,本公开实施例提供了一种对第二配置文件中的第二配置进行同步处理的具体方式,包括:
[0111]
基于配置项对应的标识,将所述第一配置文件、与对应的第二配置文件进行配置项的匹配;
[0112]
响应于第一配置文件中包括的第一配置项并未存在于对应的第二配置文件中,则将第一配置项、以及第一配置项对应的第一配置信息添加至第二配置文件;
[0113]
响应于与第一配置文件对应的第二配置文件中包括的第二配置项并未存在于第一配置文件中,将第二配置项、以及第二配置项对应的第二配置信息从第二配置文件中删除。
[0114]
在具体实施中,每个配置项有对应的属性信息,该属性信息包括配置项的对应的标识;该标识例如包括:配置项的名称、配置项的身份标识(identity document,id);根据该标识,可以将第一配置文件中有该标识的配置项,与第二配置文件有该标识的配置项进行匹配。
[0115]
在将第一配置文件中的配置项和第二配置文件中的配置项进行匹配时,例如可以针对第一配置文件中的配置项l1,根据该配置项l1对应的标识,确定第二配置文件中是否存在与其标识相同的另一配置项l2;若存在,则该第一配置项l1匹配成功。若不存在则将该第一配置文件中的配置项l1作为第一配置项,将该第一配置项以及对应的第一配置信息添加至第二配置文件中,例如第一配置文件b中的第一配置项l1未存在第二配置文件c中,则将第一配置项l1以及对应的第一配置信息添加至第二配置文件中,此时,第二配置文件c包括了第一配置项l1。
[0116]
另外,还可以针对第二配置文件中的配置项l3,根据该配置项l3对应的标识,确定第一配置文件中是否存在与其标识相同的另一配置项l4;若存在,则该配置项l3匹配成功。若不存在,则将该第二文件中的配置项l3作为第二配置项,将该第二配置项l3以及对应的第二配置信息从第二配置文件中删除;例如第二配置文件c中的第二配置项l3未存在第一配置文件b中,则将第二配置项l3以及对应的第二配置信息从第二配置文件c中删除,此时第二配置文件c中不存在第二配置项l3。
[0117]
这里需要说明的是,上述对目标开发套件的依赖环境信息和对目标开发套件的配置信息进行同步处理的过程,可以同步执行、也可以异步执行。且在上述两个同步过程异步执行的情况下,无先后实行的绝对顺序,可以先对目标开发套件的依赖环境信息进行同步处理,再对目标开发套件的配置信息进行同步处理,也可以先对目标开发套件的配置信息进行同步处理,再对目标开发套件的依赖环境信息进行同步处理。
[0118]
针对上述s102,本公开实施例响应于同步处理成功,基于对第二套件信息进行同步处理后的目标开发套件,执行开发指令。
[0119]
示例性的,基于开发终端存储的目标开发套件的第二依赖环境信息同步处理完成,以及第二配置信息同步完成后,对第二套件信息进行同步处理后的目标开发套件,执行开发指令。
[0120]
示例性的,开发指令可以通过在node脚本环境下,通过process.argv变量来获取;具体代码如下:const command=process.argv;node脚本环境即node.js就是运行在服务端的javascript的依赖环境,node.js是一个基于chrome javascript运行时建立的一个平台。
[0121]
参见图3所示,本公开实施例还提供一种页面开发指令的执行的具体流程示例,包括:
[0122]
触发开发套件命令:开发人员通过开发终端触发开发套件的开发命令。
[0123]
记录命令:开发终端记录开发命令后,将开发命令挂起。
[0124]
拉取版本信息:开发终端从服务器拉取第一依赖环境版本信息。
[0125]
校验依赖环境版本:开发终端对第一依赖环境版本信息和开发终端存储的第二依赖环境版本信息进行校验。
[0126]
根据第一依赖环境版本信息和开发终端存储的第二依赖环境版本信息判断第二环境版本信息是否为最新版本;若开发终端存储的第二依赖环境版本信息不是最新版本,则利用从云端服务器拉取第一依赖环境版本信息,对开发终端存储的第二依赖环境版本信息同步至第一依赖环境版本信息,以及更新开发套件版本。
[0127]
基于对开发终端存储的第二依赖环境版本信息同步完成,对开发套件进行初始化处理。
[0128]
若开发终端存储的第二依赖环境版本信息是最新版本,或者完成对第二依赖环境版本信息同步后,拉取开发终端存储的第二配置信息:基于对开发终端存储的第二依赖环境版本信息同步完成,或者开发终端存储的第二依赖环境版本信息是最新版本,将拉取开发终端存储的第二配置信息。
[0129]
对比配置信息:基于第二配置信息和云端服务器存储的第一配置信息进行对比,判断第二配置信息和云端服务器存储的第一配置信息是否一致;若第二配置信息和云端服务器存储的第一配置信息不一致,将第二配置文件传入合并引擎进行处理;合并引擎处理的过程:判断第二配置文件的类型,再将第一配置文件对应的第一配置信息和第二配置文件对应的第二配置信息进行传入合并引擎,合并引擎进行合并整合处理,将第二配置信息同步更新,再将同步更新后的第二配置信息发送至开发终端,将其进行覆盖开发终端原始的第二配置信息。
[0130]
若第二配置信息和云端服务器存储的第一配置信息一致,或者基于开发终端的第二依赖环境信息与第二配置信息同步处理完成后,执行开发指令。
[0131]
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
[0132]
基于同一发明构思,本公开实施例中还提供了与页面开发指令的执行方法对应的页面开发指令的执行装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述页面开发指令的执行方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘
述。
[0133]
参照图4所示,为本公开实施例提供的一种页面开发指令的执行装置的示意图,所述装置包括:同步模块41、执行模块42;其中,
[0134]
同步模块41,用于接收对应于目标开发套件的开发指令,基于服务器中存储的所述目标开发套件的第一套件信息,对开发终端存储的所述目标开发套件的第二套件信息进行同步处理;
[0135]
执行模块42,用于响应于所述同步处理成功,基于对所述第二套件信息进行同步处理后的目标开发套件,执行所述开发指令。
[0136]
一种可选的实施方式中,所述开发指令包括以下至少一种:本地的调试服务器的启动指令、项目打包指令、项目测试指令以及项目发布指令。
[0137]
一种可选的实施方式中,套件信息包括:所述目标开发套件的依赖环境信息、和/或,所述目标开发套件的配置信息。
[0138]
一种可选的实施方式中,套件信息包括:所述目标开发套件的依赖环境信息;所述同步模块41,在所述基于服务器中存储的所述目标开发套件的第一套件信息,对开发终端存储的所述目标开发套件的第二套件信息进行同步处理时,用于从所述服务器中获取所述目标开发套件的第一依赖环境信息;将所述第一依赖环境信息、与开发终端存储的所述目标开发套件的依赖环境信息进行匹配;响应于所述第一依赖环境信息和所述第二依赖环境信息不同,基于所述第一依赖环境信息对所述第二依赖环境信息进行更新。
[0139]
一种可选的实施方式中,所述同步模块41,在所述基于所述第一依赖环境信息对所述第二依赖环境信息进行更新时,用于基于所述第一依赖环境信息,对所述第二依赖环境信息进行同步处理;以及基于同步处理后的所述第二依赖环境,对所述开发终端存储的所述目标开发套件的依赖环境进行重安装处理和/或初始化处理。
[0140]
一种可选的实施方式中,套件信息包括:所述目标开发套件的配置信息;所述同步模块41,在所述基于服务器中存储的所述目标开发套件的第一套件信息,对开发终端存储的所述目标开发套件的第二套件信息进行同步处理时,用于从所述服务器中获取所述目标开发套件的第一配置信息;基于所述第一配置信息对应配置项的属性信息、以及所述第一配置信息,对开发终端存储的所述目标开发套件的第二配置信息进行同步处理;所述属性信息用于指示对应配置项的配置信息的同步方式。
[0141]
一种可选的实施方式中,所述同步模块41,在所述从所述服务器中获取所述目标开发套件的第一配置信息时,用于获取开发终端存储的所述目标开发套件的配置信息列表;所述配置信息列表包括:至少一个第二配置文件分别对应的文件名称;每个第二配置文件中包括对至少一个配置项的第二配置信息;向所述服务器发送所述配置信息列表;接收所述服务器基于所述配置信息列表反馈的与所述第二配置文件对应的第一配置文件;所述第一配置文件包括:对所述至少一个配置项的所述第一配置信息。
[0142]
一种可选的实施方式中,所述属性信息包括:与所述配置项对应的目标同步方式;所述同步模块41,在所述基于所述第一配置信息对应配置项的属性信息、以及所述第一配置信息,对开发终端存储的所述目标开发套件的第二配置信息进行同步处理时,用于针对每个第二配置文件,将与每个第二配置文件对应的第一配置文件中每个配置项对应的第一配置信息、与所述每个配置项对应的第二配置信息进行比对;响应于任一配置项的第一配
置信息、和所述任一配置项对应的第二配置信息不同,确定对所述任一配置项对应的第二配置信息的目标同步方式;利用所述任一配置项的第一配置信息,对所述任一配置项对应的第二配置信息执行所述目标同步方式指示的同步处理。
[0143]
一种可选的实施方式中,所述目标同步方式包括下述任一种:替换、合并、以及忽略。
[0144]
一种可选的实施方式中,所述属性信息还包括:所述配置项对应的标识;所述同步模块41,在所述基于所述第一配置信息对应配置项的属性信息、以及所述第一配置信息,对开发终端存储的所述目标开发套件的第二配置信息进行同步处理时,用来基于所述配置项对应的标识,将所述第一配置文件、与对应的第二配置文件进行配置项的匹配;响应于所述第一配置文件中包括的第一配置项并未存在于对应的第二配置文件中,则将所述第一配置项、以及所述第一配置项对应的第一配置信息添加至所述第二配置文件;响应于与所述第一配置文件对应的第二配置文件中包括的第二配置项并未存在于所述第一配置文件中,将所述第二配置项、以及所述第二配置项对应的第二配置信息从所述第二配置文件中删除。
[0145]
一种可选的实施方式中,所述目标同步方法包括:替换;所述同步模块41,在所述利用所述任一配置项的第一配置信息,对所述任一配置项对应的第二配置信息执行所述目标同步方式指示的同步处理时,用于将所述任一配置项对应的第二配置信息替换为所述任一配置项对应的第一配置信息,得到新的第二配置信息。
[0146]
一种可选的实施方式中,所述目标同步方法包括:合并;所述同步模块41,在所述利用所述任一配置项的第一配置信息,对所述任一配置项对应的第二配置信息执行所述目标同步方式指示的同步处理时,用于将所述任一配置项对应的第二配置信息与所述任一配置项对应的第一配置信息进行合并,得到新的第二配置信息。
[0147]
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
[0148]
本公开实施例还提供了一种计算机设备,如图5所示,为本公开实施例提供的计算机设备结构示意图,包括:
[0149]
处理器51和存储器52;所述存储器52存储有处理器51可执行的机器可读指令,处理器51用于执行存储器52中存储的机器可读指令,所述机器可读指令被处理器51执行时,处理器51执行下述步骤:
[0150]
接收对应于目标开发套件的开发指令,基于服务器中存储的所述目标开发套件的第一套件信息,对开发终端存储的所述目标开发套件的第二套件信息进行同步处理;
[0151]
响应于所述同步处理成功,基于对所述第二套件信息进行同步处理后的目标开发套件,执行所述开发指令。
[0152]
上述存储器52包括内存521和外部存储器522;这里的内存521也称内存储器,用于暂时存放处理器51中的运算数据,以及与硬盘等外部存储器522交换的数据,处理器51通过内存521与外部存储器522进行数据交换。
[0153]
上述指令的具体执行过程可以参考本公开实施例中所述的页面开发指令的执行方法的步骤,此处不再赘述。
[0154]
本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的页面开发指令的
执行方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
[0155]
本公开实施例还提供一种计算机程序产品,该计算机程序产品承载有程序代码,所述程序代码包括的指令可用于执行上述方法实施例中所述的页面开发指令的执行方法的步骤,具体可参见上述方法实施例,在此不再赘述。
[0156]
其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(software development kit,sdk)等等。
[0157]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0158]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0159]
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0160]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0161]
最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1