CN117742703A - 页面渲染文件的路径更新方法、装置及存储介质 - Google Patents
页面渲染文件的路径更新方法、装置及存储介质 Download PDFInfo
- Publication number
- CN117742703A CN117742703A CN202211114571.9A CN202211114571A CN117742703A CN 117742703 A CN117742703 A CN 117742703A CN 202211114571 A CN202211114571 A CN 202211114571A CN 117742703 A CN117742703 A CN 117742703A
- Authority
- CN
- China
- Prior art keywords
- path
- preset
- file
- target
- directory
- 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
- 238000000034 method Methods 0.000 title claims abstract description 88
- 238000009877 rendering Methods 0.000 title claims abstract description 46
- 238000003491 array Methods 0.000 claims description 20
- 230000009191 jumping Effects 0.000 claims description 3
- 238000011161 development Methods 0.000 abstract description 13
- 238000012423 maintenance Methods 0.000 abstract description 8
- 238000005516 engineering process Methods 0.000 abstract description 3
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 14
- 238000010276 construction Methods 0.000 description 13
- 238000004458 analytical method Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 11
- 238000012545 processing Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 8
- 238000004806 packaging method and process Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种页面渲染文件的路径更新方法、装置及存储介质,可以应用于云技术、人工智能、智慧交通、车联网等各种场景,所述方法包括:获取目标文件对应的原始路径以及目标文件对应的目标应用的目标版本标识;基于目标版本标识,在预设数据库中查找与目标版本标识匹配的目录文件,得到目标目录文件;获取目标目录文件对应的第一路径集以及初始目录文件对应的第二路径集;基于第一路径集以及第二路径集,确定目标文件对应的相对路径;基于相对路径与预设文件系统的匹配结果,对原始路径进行更新,得到更新路径;以及基于更新路径,确定目标文件。本申请提高了目标应用的定制业务的开发效率和维护效率。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种页面渲染文件的路径更新方法、装置及存储介质。
背景技术
相关技术中,根据数据驱动方案或硬编码判断方案构建同一业务对应的多个版本;其中,数据驱动方案是将不同版本的样式和业务存于后台数据中,通过后台来区分来自不同版本的请求,进而返回不同的样式数据来展示不同的前端版本。硬编码判断方案是在相关的代码模块添加不同的代码分支,通过全局变量来区分不同版本并显示相关效果。数据驱动方案需要保证代码功能有足够的健壮性,导致开发效率较低;如果后期对于某个版本的定制化程度较高,描述定制化的数据已经比程序本身还复杂了,所以,这个方案并不支持深度化定制。硬编码判断方案中每个功能模块都需要考虑原来的代码逻辑,开发效率比较低,易造成改动引发原版本的冲突,所以,该方案的开发效率较低且可维护性较低。
发明内容
本申请提供了一种页面渲染文件的路径更新方法、装置及存储介质,以至少解决现有技术中业务开发效率低下的技术问题。
一方面,本申请提供了一种页面渲染文件的路径更新方法,所述方法包括:
获取目标文件对应的原始路径以及所述目标文件对应的目标应用的目标版本标识;
基于所述目标版本标识,在预设数据库中查找与所述目标版本标识匹配的目录文件,得到目标目录文件;所述目标目录文件用于存储所述目标应用对应的目标业务特征;所述目标业务特征基于初始目录文件中的初始业务特征以及所述目标应用的定制业务参数生成;所述预设数据库基于至少两个预设应用各自对应的预设版本标识以及预设目录文件构建得到;每个预设应用对应的预设目录文件基于所述初始目标文件以及所述每个预设应用对应的预设定制业务参数构建得到;
获取所述目标目录文件对应的第一路径集以及所述初始目录文件对应的第二路径集;
基于所述第一路径集以及所述第二路径集,确定所述目标文件对应的相对路径;
基于所述相对路径与预设文件系统的匹配结果,对所述原始路径进行更新,得到更新路径;所述预设文件系统为基于所述目标目录文件构建的文件系统,所述预设文件系统中文件路径携带所述目标目录文件的目标版本标识;
基于所述更新路径,确定所述目标文件;所述目标文件用于渲染所述目标应用中页面。
另一方面提供了一种页面渲染文件的路径更新装置,所述装置包括:
目标版本标识获取模块,用于获取目标文件对应的原始路径以及所述目标文件对应的目标应用的目标版本标识;
目标目录文件确定模块,用于基于所述目标版本标识,在预设数据库中查找与所述目标版本标识匹配的目录文件,得到目标目录文件;所述目标目录文件用于存储所述目标应用对应的目标业务特征;所述目标业务特征基于初始目录文件中的初始业务特征以及所述目标应用的定制业务参数生成;所述预设数据库基于至少两个预设应用各自对应的预设版本标识以及预设目录文件构建得到;每个预设应用对应的预设目录文件基于所述初始目标文件以及所述每个预设应用对应的预设定制业务参数构建得到;
路径集获取模块,用于获取所述目标目录文件对应的第一路径集以及所述初始目录文件对应的第二路径集;
相对路径确定模块,用于基于所述第一路径集以及所述第二路径集,确定所述目标文件对应的相对路径;
路径更新模块,用于基于所述相对路径与预设文件系统的匹配结果,对所述原始路径进行更新,得到更新路径;所述预设文件系统为基于所述目标目录文件构建的文件系统,所述预设文件系统中文件路径携带所述目标目录文件的目标版本标识;
目标文件确定模块,用于基于所述更新路径,确定所述目标文件;所述目标文件用于渲染所述目标应用中页面。
在一些实施例中,所述相对路径确定模块包括:
路径转化子模块,用于将所述目标文件对应的原始路径转化为绝对路径;
候选路径集确定子模块,用于将所述第一路径集以及所述第二路径集,确定为候选路径集;
相对路径确定子模块,用于若所述绝对路径为所述候选路径集中路径,将所述绝对路径转化成相对路径,得到所述目标文件对应的相对路径。
在一些实施例中,所述路径更新模块包括:
匹配结果确定子模块,用于确定所述相对路径与预设文件系统的匹配结果;
路径集确定子模块,用于确定所述绝对路径所属的路径集;
路径更新子模块,用于基于所述匹配结果以及所述绝对路径所属的路径集,对所述原始路径进行更新,得到更新路径。
在一些实施例中,所述路径更新子模块包括:
第一更新单元,用于若所述相对路径与所述预设文件系统匹配失败,且所述绝对路径为所述第一路径集中路径,将所述原始路径中的根路径修改为所述初始目录文件的根路径,得到第一更新路径。
在一些实施例中,所述路径更新子模块包括:
第二更新单元,用于若所述相对路径与所述预设文件系统匹配成功,且所述绝对路径为所述第二路径集中路径,将所述原始路径中的根路径修改为所述目标目录文件的根路径,得到第二更新路径。
在一些实施例中,所述匹配结果确定子模块包括:
预设临时变量构建单元,用于构建所述预设文件系统对应的预设临时变量,作为当前临时变量;
数组转换单元,用于将所述相对路径转换成多个数组,每个数组对应一个级别的目录;
遍历单元,用于遍历所述多个数组,确定每个数组与所述当前临时变量的匹配结果;
判断单元,用于若任一数组与所述当前临时变量匹配成功,判断所述任一数组对应的目录是否为预设级别的目录以及确定所述当前临时变量匹配的数据信息;
第一匹配单元,用于若所述任一数组对应的目录为所述预设级别的目录,且所述当前临时变量匹配的数据信息为目录,确定所述相对路径与预设文件系统匹配失败。
在一些实施例中,所述装置还包括:
步骤跳转模块,用于若所述任一数组对应的目录非预设级别的目录,且所述当前临时变量匹配的数据信息为目录,将匹配的目录重新作为所述当前临时变量,并跳转至所述遍历所述多个数组,确定每个数组与所述当前临时变量的匹配结果的步骤。
在一些实施例中,所述路径更新模块包括:
根路径确定子模块,用于确定所述目标文件对应的根路径以及所述相对路径;
第一匹配结果确定子模块,用于确定所述根路径与所述初始目录文件的第一匹配结果;
第二匹配结果确定子模块,用于确定所述相对路径与所述预设文件系统的第二匹配结果;
更新路径确定子模块,用于基于所述第一匹配结果以及所述第二匹配结果,对所述原始路径进行更新,得到更新路径。
在一些实施例中,所述更新路径确定子模块包括:
第一单元,用于若所述第一匹配结果为匹配成功结果且所述第二匹配结果为匹配成功结果,将所述原始路径中的根路径修改为所述目标目录文件的根路径,得到更新路径。
在一些实施例中,所述更新路径确定单元包括:
第二单元,用于若所述第一匹配结果为匹配失败结果且所述第二匹配结果为匹配失败结果,将所述原始路径中的根路径修改为所述初始目录文件的根路径,得到更新路径。
在一些实施例中,所述装置还包括:预设数据库构建模块,所述预设数据库构建模块包括:
预设定制业务参数获取子模块,用于获取至少两个预设应用各自对应的预设定制业务参数;所述至少两个预设应用包括所述目标应用;
预设目录文件构建子模块,用于基于所述初始目标文件以及所述至少两个预设应用各自对应的预设定制业务参数,构建所述至少两个预设应用各自对应的预设目录文件;
预设版本标识确定子模块,用于确定所述至少两个预设应用各自对应的预设版本标识;
预设数据库构建子模块,用于基于所述至少两个预设应用各自对应的预设版本标识以及预设目录文件,构建所述预设数据库。
在一些实施例中,所述预设目录文件构建子模块包括:
初始业务特征获取单元,用于从所述初始目标文件中获取每个预设定制业务参数对应的初始业务特征;
参数调整单元,用于基于每个预设定制业务参数,调整所述每个预设定制业务参数对应的初始业务特征,得到每个预设应用对应的预设业务特征;
文件构建单元,用于基于所述每个预设应用对应的预设业务特征,构建每个预设应用对应的预设目录文件。
另一方面提供了一种页面渲染文件的路径更新设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由所述处理器加载并执行以实现如上所述的页面渲染文件的路径更新方法。
另一方面提供了一种计算机存储介质,所述计算机存储介质存储有至少一条指令或至少一段程序,所述至少一条指令或至少一段程序由处理器加载并执行以实现如上所述的页面渲染文件的路径更新方法。
另一方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行以实现如上所述的页面渲染文件的路径更新方法。
本申请提供的页面渲染文件的路径更新方法、装置及存储介质,具有如下技术效果:
本申请获取目标文件对应的原始路径以及目标文件对应的目标应用的目标版本标识;基于目标版本标识,在预设数据库中查找与目标版本标识匹配的目录文件,得到目标目录文件;目标目录文件用于存储目标应用对应的目标业务特征;目标业务特征基于初始目录文件中的初始业务特征以及目标应用的定制业务参数生成;预设数据库基于至少两个预设应用各自对应的预设版本标识以及预设目录文件构建得到;每个预设应用对应的预设目录文件基于初始目标文件以及每个预设应用对应的预设定制业务参数构建得到;获取目标目录文件对应的第一路径集以及初始目录文件对应的第二路径集;基于第一路径集以及第二路径集,确定目标文件对应的相对路径;基于相对路径与预设文件系统的匹配结果,对原始路径进行更新,得到更新路径;预设文件系统为基于目标目录文件构建的文件系统,预设文件系统中文件路径携带目标目录文件的目标版本标识;基于更新路径,确定目标文件;上述目标文件用于渲染目标应用中页面。本申请将目标应用的定制业务参数对应的目标业务特征进行单独存储,构建对应的目标目录文件,从而便于对目标目录文件进行单独维护,提高了目标应用的定制业务的开发效率和维护效率;本申请根据目标目录文件对应的第一路径集以及初始目录文件对应的第二路径集;基于第一路径集以及第二路径集,确定目标文件对应的相对路径;基于相对路径与预设文件系统的匹配结果,对原始路径进行更新,得到更新路径;从而可以基于更新路径快速获取目标文件,提高了目标应用中页面的渲染效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
图1是本申请实施例提供的一种页面渲染文件的路径更新系统的示意图;
图2是本申请实施例提供的一种页面渲染文件的路径更新方法的流程示意图;
图3是本申请实施例提供的一种预设数据库的构建方法的流程示意图;
图4是本申请实施例提供的一种构建所述至少两个预设应用各自对应的预设目录文件的方法的流程示意图;
图5是本申请实施例提供的一种页面渲染文件的路径更新系统的结构示意图;
图6是本申请实施例提供的一种目标应用的代码构建系统示意图;
图7是本申请实施例提供的一种版本目录示意图;
图8是本申请实施例提供的一种基于上述第一路径集以及上述第二路径集,确定上述目标文件对应的相对路径的方法的流程示意图;
图9是本申请实施例提供的一种基于所述相对路径与预设文件系统的匹配结果,得到更新路径的方法的流程示意图;
图10是本申请实施例提供的一种基于上述第一路径集以及上述第二路径集,确定上述目标文件对应的相对路径的方法的流程示意图;
图11是本申请实施例提供的一种文件路径更新系统的结构示意图;
图12是本申请实施例提供的一种页面渲染文件的路径更新装置的结构示意图;
图13是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
首先,在对本申请实施例进行描述的过程中出现的部分名词或者术语作如下解释:
webpack:代码编译工具,有入口、出口、loader和插件。webpack是一个用于现代JavaScript应用程序的静态模块打包工具。通过一个给定的主文件(如:index.js),webpack将从这个文件开始找到项目的所有依赖文件,使用loaders处理它们,最后打包为一个(或多个)浏览器可识别的JavaScript文件。
loader:源代码转换器,用于对模块的源代码进行转换。loader可以在加载模块时预处理文件。因此,loader类似于其他构建工具中“task(任务)”,并提供了处理前端构建步骤的得力方式。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
请参阅图1,图1是本申请实施例提供的一种页面渲染文件的路径更新系统的示意图,如图1所示,该页面渲染文件的路径更新系统可以至少包括服务器01和客户端02。
具体的,本申请实施例中,所述服务器01可以包括一个独立运行的服务器,或者分布式服务器,或者由多个服务器组成的服务器集群,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(ContentDelivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。服务器01可以包括有网络通信单元、处理器和存储器等等。具体的,所述服务器01可以用于构建目标目录文件,并基于目标目录文件对文件路径进行更新,以及根据更新路径获取目标文件。
具体的,本申请实施例中,所述客户端02可以包括智能手机、台式电脑、平板电脑、笔记本电脑、数字助理、智能可穿戴设备、智能音箱、车载终端、智能电视等类型的实体设备,也可以包括运行于实体设备中的软体,例如一些服务商提供给账户的网页页面,也可以为该些服务商提供给账户的应用。具体的,所述客户端02可以用于基于目标文件,渲染目标应用中页面。
以下介绍本申请的一种页面渲染文件的路径更新方法,图2是本申请实施例提供的一种页面渲染文件的路径更新方法的流程示意图,本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体的如图2所示,上述方法可以包括:
S201:获取目标文件对应的原始路径以及上述目标文件对应的目标应用的目标版本标识。
在本申请实施例中,上述获取目标文件对应的原始路径以及上述目标文件对应的目标应用的目标版本标识,可以包括:
终端响应与基于交互控件触发的操作指令,向服务器发送目标页面展示请求;上述交互控件为目标应用中预设页面中的控件;目标页面展示请求携带目标文件对应的目标应用的目标版本标识,目标文件为目标页面对应的文件;
在本申请实施例中,终端对应的账户可以触发交互控件,向服务器发送目标页面展示请求;目标版本标识可以为目标应用对应的版本标识;例如,针对应用程序A,账户X需求在应用程序A的通讯录中显示联系人的姓名以及公司名称;账户Y需求在应用程序A的通讯录中仅显示联系人的昵称;那么,基于这两种需求,需要构建不同版本的应用程序,从而可以得到应用程序A1和应用程序A2;此时,A1、A2可以作为应用程序的版本标识。
服务器解析上述目标页面展示请求,得到上述目标文件对应的目标应用的目标版本标识;
服务器基于上述目标页面展示请求,获取上述目标文件对应的原始路径。
在本申请实施例中,服务器可以基于终端的请求,获取目标文件对应的原始路径以及上述目标文件对应的目标应用的目标版本标识。
S203:基于上述目标版本标识,在预设数据库中查找与上述目标版本标识匹配的目录文件,得到目标目录文件;上述目标目录文件用于存储上述目标应用对应的目标业务特征;上述目标业务特征基于上述初始目标文件中的初始业务特征以及上述目标应用的定制业务参数生成。上述预设数据库基于至少两个预设应用各自对应的预设版本标识以及预设目录文件构建得到;每个预设应用对应的预设目录文件基于上述初始目标文件以及上述每个预设应用对应的预设定制业务参数构建得到;
在本申请实施例中,目标业务特征可以为目标应用中任一显示页面中显示信息的特征,目标应用的定制业务参数可以为目标应用中任一显示页面中显示信息对应的参数,可以通过定制业务参数确定页面中显示信息的显示方式;初始目标文件为初始构建的文件,初始业务特征为初始目标文件中预设的业务特征;例如,针对应用程序A,通讯录中显示联系人的默认显示方式为显示联系人的姓名;账户X需求在应用程序A的通讯录中显示联系人的姓名以及公司名称;账户Y需求在应用程序A的通讯录中仅显示联系人的昵称;那么,目标应用的定制业务参数即为联系人的显示参数;其中,显示联系人的姓名即为初始业务特征,对于账户X,目标业务特征即为显示联系人的姓名以及公司名称;对于账户Y,目标业务特征即为显示联系人的昵称。
在本申请实施例中,预设数据库中存储有多个预设应用各自对应的预设版本标识与多个预设应用各自对应的预设目录文件的对应关系;预设版本标识与预设目录文件可以为一一对应关系;预设目录文件可以用于存储定制业务特征对应的文件。例如,针对应用程序A,在应用过程中,对于账户X、Y的需求,可以仅对通讯录中联系人显示模块进行更新,并单独构建目录存储两个版本对应的联系人显示模块,得到预设目录文件。
在本申请实施例中,对于每个预设应用的定制业务参数,可以构建对应的预设目录文件进行单独存储,从而便于对不同版本应用的定制业务单独进行开发和维护,提高了应用中业务的开发和维护效率。
在本申请实施例中,如图3所示,上述预设数据库的构建方法包括:
S301:获取至少两个预设应用各自对应的预设定制业务参数;上述至少两个预设应用包括上述目标应用;
在本申请实施例中,对于一个应用程序,可以根据不同账户的需求,确定对应的预设定制业务参数,并构建多个不同版本的预设应用;预设定制业务参数可以为应用程序中预设业务模块对应的参数;上述至少两个预设应用可以包括上述目标应用。
S303:基于上述初始目标文件以及上述至少两个预设应用各自对应的预设定制业务参数,构建上述至少两个预设应用各自对应的预设目录文件;
在本申请实施例中,初始目标文件为应用程序的原始文件;可以根据初始目标文件以及任一预设应用对应的预设定制业务参数,构建任一预设应用对应的预设目录文件,从而实现基于预设目标文件存储定制业务参数。
在本申请实施例中,如图4所示,上述基于上述初始目标文件以及上述至少两个预设应用各自对应的预设定制业务参数,构建上述至少两个预设应用各自对应的预设目录文件,包括:
S3031:从上述初始目标文件中获取每个预设定制业务参数对应的初始业务特征;
在本申请实施例中,初始目标文件中存储各种不同类型的初始业务特征,可以从中获取每个预设定制业务参数对应的初始业务特征;各个预设定制业务参数对应的初始业务特征可以相同,也可以不同;若各个预设定制业务参数对应的初始业务特征相同,则可以获取任一预设定制业务参数对应的初始业务特征,并进行进一步地改进。
S3033:基于每个预设定制业务参数,调整上述每个预设定制业务参数对应的初始业务特征,得到每个预设应用对应的预设业务特征;
在本申请实施例中,可以根据每个预设定制业务参数,调整上述每个预设定制业务参数对应的初始业务特征,得到每个预设应用对应的预设业务特征;每个初始业务特征均对应初始业务参数,针对任一初始业务特征,可以采用预设定制业务参数替换初始业务特征中的初始业务参数;每个预设应用对应的预设定制业务可以为一个或多个,其对应的预设业务特征也可以为一个或多个;预设业务特征与预设定制业务参数可以为一一对应关系,也可以为一对多关系;即一个预设业务特征可以对应一个或多个预设定制业务参数。
S3035:基于上述每个预设应用对应的预设业务特征,构建每个预设应用对应的预设目录文件。
在本申请实施例中,可以在每个预设应用对应的预设目录文件中,存储上述每个预设应用对应的预设业务特征。每个预设应用可以对应一个或多个预设业务特征。
在本申请实施例中,可以基于每个预设定制业务参数,调整上述每个预设定制业务参数对应的初始业务特征,从而实现快速构建每个预设应用对应的预设目录文件。
S305:确定上述至少两个预设应用各自对应的预设版本标识;
在本申请实施例中,可以构建每个预设应用对应的预设版本标识,预设版本标识用于区别不同版本的预设应用的预设目录文件。预设版本标识可以包括但不限于字符标识、图像标识。
S307:基于上述至少两个预设应用各自对应的预设版本标识以及预设目录文件,构建上述预设数据库。
在本申请实施例中,可以基于上述至少两个预设应用各自对应的预设版本标识以及上述至少两个预设应用各自对应的预设目录文件,构建上述预设数据库;预设版本标识与预设目录文件可以为一一对应关系;预设数据库可以存储不同的预设应用对应的预设目标文件。
在本申请实施例中,可以基于webpack的开发环境实现通过目录系统来区分不同的客户定制版,通过自主开发的插件来完成前端代码的整体的打包和编译流程对于不同版本的路径的定制化加载,进而实现根据不同的路径构建不同的版本前端的效果。
在本申请实施例中,可以根据各个预设应用对应的预设版本标识以及预设目录文件,构建预设数据库;从而便于后续快速查询目标目录文件。
在一个具体的实施例中,如图5所示,图5为一种页面渲染文件的路径更新系统的结构示意图,包括预设数据库、配置模块以及部署包生成模块;
其中,预设数据库中存储各个版本应用对应的目录文件,包括基础版本目录、版本A目录、版本B目录、版本C目录,基础版本目录中存储应用的所有模块信息,包括头部样式、预警统计模块、登录模块等;其他各版本目录存储各自对应的定制化业务特征;服务器可以配合终端,基于配置模块进行本地化打包,得到多个版本的配置文件;也可以进行SaaS打包,生成多个版本的配置文件;SaaS(Software as a Service)为软件即服务,即通过网络提供软件服务。最后通过部署包生成模块,生成各个版本的部署包,例如可以得到版本A的部署包,包括配置A文件、中间层业务逻辑模块以及版本A语言。每个版本都有单独的目录,版本的目录中只需要含有该版本的专属业务代码。通过这样的方式,各版本开发的时候版本间无影响,只开发自己的专属业务,开发效率高、易维护。
在本申请实施例中,上述目标目录文件的生成方法包括:
获取上述目标应用的定制业务参数;
在本申请实施例中,账户可以在终端中提交定制业务参数,并发送至服务器。目标标应用的定制业务参数可以为目标应用中任一显示页面中显示信息对应的参数,可以通过定制业务参数确定页面中显示信息的显示方式;初始目标文件为初始构建的文件,初始业务特征为初始目标文件中预设的业务特征;例如,针对应用程序A,通讯录中显示联系人的默认显示方式为显示联系人的姓名;账户X需求在应用程序A的通讯录中显示联系人的姓名以及公司名称;账户Y需求在应用程序A的通讯录中仅显示联系人的昵称;那么,目标应用的定制业务参数即为联系人的显示参数。
基于上述定制业务参数,从上述初始目标文件中获取上述定制业务参数对应的初始业务特征;
在本申请实施例中,初始业务特征对应有初始业务参数。
基于上述定制业务参数调整上述初始业务特征,得到目标业务特征;
在本申请实施例中,可以采用定制业务参数替换初始业务参数,从而确定目标业务特征。
基于上述目标业务特征,构建上述目标目录文件。
在本申请实施例中,可以在目标目录文件中存储目标业务特征,目标业务特征可以为一个或多个。
在一个具体的实施例中,如图6所示,图6为目标应用的代码构建系统示意图,包括编译模块、文件生成模块,其中,编译模块中存储基础路径以及对应的预设应用的原始文件;当需要新增版本A、B时,分别根据版本A、B各自对应的定制业务参数,基于文件生成模块生成对应版本的文件;例如,对于版本A,定制业务为页面头部文件A、菜单插件A,可以构建版本A目录,用于存储页面头部文件A、菜单插件A这两个文件;对于版本B,定制业务为页面头部文件B,可以构建版本B目录,用于存储页面头部文件B;然后可以根据基础目录以及版本A目录,构建版本A对应的文件A,根据基础目录以及版本B目录,构建版本B对应的文件B;A目录的代码是版本A的定制化业务,如果将A目录设置为优先路径时,就会看到最终生成的编译代码是优先从A路径下引入文件,不在A路径的再从基础路径引用,就会产生基于版本A的前端代码的开发和打包环境。所以,文件优先路径引用方案对于前端项目的代码构建,只需要将原来基础代码路径的同目录下新建同级的定制化目录。
在一个具体的实例中,如图7所示,图7为一种版本目录示意图,其中,目录03为基础版本目录,目录04为定制版本目录,例如,目录04可以为版本A或版本B中目录。
S205:获取上述目标目录文件对应的第一路径集以及上述初始目录文件对应的第二路径集。
在本申请实施例中,初始目录文件可以为服务器初始构建的初始版本的应用对应的文件,其中可以存储应用的所有模块。
S207:基于上述第一路径集以及上述第二路径集,确定上述目标文件对应的相对路径。
在本申请实施例中,可以根据上述目标目录文件以及上述初始目录文件各自对应的路径,对上述原始路径进行更新,得到目标文件的更新路径,以便于快速、准确地查找目标文件。
具体的,在本申请实施例中,可以分别获取目标目录文件以及初始目录文件各自对应的路径集。可以设置第一路径集的优先级高于第二路径集的优先级,在确定目标版本标识之后,可以优先从第一路径集中引入文件,若查不到再在第二路径集中引入文件;其中,目标目录文件对应的第一路径集可以包括目标版本标识,上述初始目录文件对应的第二路径集可以包括初始版本标识。
S209:基于上述第一路径集以及上述第二路径集,确定上述目标文件对应的相对路径;
在本申请实施例中,如图8所示,基于上述第一路径集以及上述第二路径集,确定上述目标文件对应的相对路径,包括:
S2091:将目标文件对应的原始路径转化为绝对路径;
在本申请实施例中,原始路径为相对路径,可以将其转换成绝对路径。
在本申请实施例中,路径的基本规则是:
“/”代表根目录“./代表返回上一级目录”“././代表返回上两级目录”“/.代表下级目录”“././代表下两级目录”;
绝对路径:绝对路径是指文件在硬盘上真正存在的路径。例如“1.txt”这个文件是存放在硬盘的“C:\Users\15063\Desktop”目录下,那么“1.txt”这个文档的绝对路径就是“C:\Users\15063\Desktop\1.txt”。
相对路径:相对于自己的目标文件位置。例如“1.htm”文件所在目录为“C:\Users\15063\Desktop\lqf”,而“1.txt”文件所在目录为“C:\Users\15063\Desktop”,那么“1.txt”相对于“1.htm”文件来说,是在其所在目录的上级目录里。
两者区别:①绝对路径是一个文件实际存在于硬盘中的路径。②相对路径,指的是与自身的目标档案相关的位置。③绝对路径是指可以从这个路径上查找文件夹,不管是从外部或内部存取。而相对路径则是与它本身相关的,其它地方的档案和路径,则只能在内部存取。
S2093:将上述第一路径集以及上述第二路径集,确定为候选路径集;
在一些实施例中,上述方法还包括:
判断上述绝对路径是否为候选路径集中路径。
在本申请实施例中,可以将上述第一路径集以及上述第二路径集作为候选路径集。
S2095:若上述绝对路径为候选路径集中路径,将上述绝对路径转化成相对路径;上述候选路径集包括上述第一路径集以及上述第二路径集;
具体的,在本申请实施例中,绝对路径还可以为第一路径集、第二路径集之外的路径;若上述绝对路径为候选路径集中路径,可以将上述绝对路径转化成相对路径,相对路径可以基于版本标识构建,从而便于在对应版本标识的目录文件中快速查找文件。
S2011:基于上述相对路径与预设文件系统的匹配结果,对上述原始路径进行更新,得到更新路径;上述预设文件系统为基于上述目标目录文件构建的文件系统,上述预设文件系统中文件路径携带上述目标目录文件的目标版本标识。
具体的,在本申请实施例中,预设文件系统可以为基于上述目标目录文件构建的文件系统,上述预设文件系统中文件路径可以携带上述目标目录文件的目标版本标识;在确定相对路径之后,可以将其与预设文件系统进行匹配,并根据匹配结果进行路径更新,从而提高路径更新准确率。
在一些实施例中,如图9所示,上述基于上述相对路径与预设文件系统的匹配结果,对上述原始路径进行更新,得到更新路径,包括:
S20111:确定上述相对路径与预设文件系统的匹配结果;
在一些实施例中,上述确定上述相对路径与预设文件系统的匹配结果,包括:
构建上述预设文件系统对应的预设临时变量,作为当前临时变量;
在本申请实施例中,可以先为预设文件系统构建预设临时变量,并进行后续的匹配。
将上述相对路径转换成多个数组,每个数组对应一个级别的目录;
在本申请实施例中,可以将确定的相对路径转换成多个数组,一个数组对应一个级别的目录;例如,可以将根目录作为第一级别目录(最高级别的目录),然后依次构建其他级别的目录。
遍历上述多个数组,确定每个数组与上述当前临时变量的匹配结果;
在本申请实施例中,可以将各个数组分别与当前临时变量进行匹配,得到各自对应的匹配结果。
若任一数组与上述当前临时变量匹配成功,判断上述任一数组对应的目录是否为预设级别的目录以及确定上述当前临时变量匹配的数据信息;
在本申请实施例中,预设级别的目录可以为最后一层目录,即最低层级的目录,数据信息为数组对应的信息。
若上述任一数组对应的目录为上述预设级别的目录,且上述当前临时变量匹配的数据信息为目录,确定上述相对路径与预设文件系统匹配失败。
在本申请实施例中,若上述任一数组对应的目录为上述预设级别的目录,即当目标路径匹配到最后一级目录时,若上述当前临时变量匹配的数据信息为目录,则确定上述相对路径与预设文件系统匹配失败。
在一些实施例中,上述方法还包括:
若任一数组与上述当前临时变量匹配失败,确定上述相对路径与预设文件系统匹配失败。
在本申请实施例中,若任意一个数组与上述当前临时变量匹配失败,确定上述相对路径与预设文件系统匹配失败,并不再继续遍历。
在本申请实施例中,可以根据相对路径与预设文件系统的匹配结果,确定绝对路径是否为第一路径集中路径。
S20113:确定上述绝对路径所属的路径集;
在本申请实施例中,可以判断上述绝对路径是第一路径集中路径还是第二路径集中路径。
S20115:基于上述匹配结果以及上述绝对路径所属的路径集,对上述原始路径进行更新,得到更新路径。
在一些实施例中,上述基于上述匹配结果以及上述绝对路径所属的路径集,对上述原始路径进行更新,得到更新路径,包括:
若上述相对路径与上述预设文件系统匹配失败,且上述绝对路径为上述第一路径集中路径,将上述原始路径中的根路径修改为上述初始目录文件的根路径,得到第一更新路径。
在本申请实施例中,第一更新路径可以携带初始目录文件的版本标识。
在一些实施例中,上述基于上述匹配结果以及上述绝对路径所属的路径集,对上述原始路径进行更新,得到更新路径,包括:
若上述相对路径与上述预设文件系统匹配成功,且上述绝对路径为上述第二路径集中路径,将上述原始路径中的根路径修改为上述目标目录文件的根路径,得到第二更新路径。第二更新路径可以携带目标目录文件的版本标识。
在一些实施例中,上述方法还包括:
若上述任一数组对应的目录非预设级别的目录,且上述当前临时变量匹配的数据信息为目录,将匹配的目录重新作为上述当前临时变量,并跳转至上述遍历上述多个数组,确定每个数组与上述当前临时变量的匹配结果的步骤。
在本申请实施例中,若上述任一数组对应的目录不是预设级别的目录,并且上述当前临时变量匹配的数据信息为目录,将匹配的目录重新作为上述当前临时变量,并跳转至上述遍历上述多个数组,确定每个数组与上述当前临时变量的匹配结果的步骤,继续遍历下一个数据进行匹配。
在一些实施例中,上述方法还包括:
若上述任一数组对应的目录为上述预设级别的目录,且上述当前临时变量匹配的数据信息为文件,确定上述相对路径与预设文件系统匹配成功。
在本申请实施例中,在遍历过程中,若任一数组对应的目录为上述预设级别的目录,且上述当前临时变量匹配的数据信息为文件,确定上述相对路径与预设文件系统匹配成功。
在一些实施例中,上述基于上述相对路径与预设文件系统的匹配结果,对上述原始路径进行更新,得到更新路径,包括:
确定上述目标文件对应的根路径以及上述相对路径;
确定上述根路径与上述初始目录文件的第一匹配结果;
在本申请实施例中,第一匹配结果包括第一成功结果和第一失败结果。
确定上述相对路径与上述预设文件系统的第二匹配结果;
在本申请实施例中,第二匹配结果包括第二成功结果和第二失败结果。
基于上述第一匹配结果以及上述第二匹配结果,对上述原始路径进行更新,得到更新路径。
在本申请实施例中,可以结合根路径与上述初始目录文件的第一匹配结果,以及相对路径与上述预设文件系统的第二匹配结果,对原始路径进行更新。
在一个具体的实施例中,如下表1所示,表1为一种路径更新方法示意图;
表1:
其中,文件引用请求=绝对路径根目录+相对路径具体可以为:
’/A/container/header/user.js’=’/A’+’./container/header/user.js’;
在一些实施例中,针对表1中示例2的情况如下:上述基于上述第一匹配结果以及上述第二匹配结果,对上述原始路径进行更新,得到更新路径,包括:
若上述第一匹配结果为匹配成功结果且上述第二匹配结果为匹配成功结果,将上述原始路径中的根路径修改为上述目标目录文件的根路径,得到更新路径。
在一些实施例中,针对表1中示例3的情况如下:上述基于上述第一匹配结果以及上述第二匹配结果,对上述原始路径进行更新,得到更新路径,包括:
若上述第一匹配结果为匹配失败结果且上述第二匹配结果为匹配失败结果,将上述原始路径中的根路径修改为上述初始目录文件的根路径,得到更新路径。
在一些实施例中,针对表1中示例1的情况如下:上述方法还包括:
若上述第一匹配结果为匹配成功结果且上述第二匹配结果为匹配失败结果,确定上述相对路径与预设文件系统匹配成功。
在一些实施例中,针对表1中示例4的情况如下:上述方法还包括:
若上述第一匹配结果为匹配失败结果且上述第二匹配结果为匹配成功结果,确定上述相对路径与预设文件系统匹配成功。
在本申请实施例中,若上述相对路径与预设文件系统匹配成功,可以基于原始路径解析得到目标文件;若上述相对路径与预设文件系统匹配失败,可以基于更新路径解析得到目标文件。
S2013:基于上述更新路径,确定上述目标文件;上述目标文件用于渲染上述目标应用中页面。
在本申请实施例中,上述方法还可以包括:
向终端发送上述目标文件,以使上述终端基于上述目标文件,渲染目标应用中页面。
在本申请实施例中,可以在终端中基于目标文件渲染目标应用中页面;对于不同版本的应用,同一模块对应的显示页面不同。
在一个具体的实施例中,如图10所示,图10为另一种页面渲染文件的路径更新方法的流程示意图,该方法应用于webpack中,包括:
S1001:导入目标文件获取请求,该请求携带原始路径;
具体的,在本说明书实施例中,目标文件获取请求还可以携带目标文件对应的目标应用的目标版本标识;可以通过目标版本标识,在预设数据库中查找与目标版本标识匹配的目录文件,得到目标目录文件;目标目录文件用于存储目标应用对应的目标业务特征;目标业务特征基于初始目录文件中的初始业务特征以及所述目标应用的定制业务参数生成;预设数据库基于至少两个预设应用各自对应的预设版本标识以及预设目录文件构建得到;每个预设应用对应的预设目录文件基于所述初始目标文件以及每个预设应用对应的预设定制业务参数构建得到。
S1003:对目标文件获取请求进行解析,得到原始路径以及请求路径;
具体的,在本说明书实施例中,可以对目标文件获取请求进行解析,得到源代码,并通过源代码确定原始路径以及请求路径;具体的,可以确定上述源代码对应的源代码转化器;基于源代码转化器将源代码转换为多个代码块;将多个代码块进行合并处理,得到合并代码块;根据合并代码块生成代码包;再通过递归解析模块重复解析代码。
S1005:调用路径解析函数进行路径解析;
具体的,在本说明书实施例中,路径解析函数可以为resolve函数;可以通过路径解析函数,构建文件系统;文件系统中可以包括文件标识(logo.js)、头部文件(header.js)以及账户标识(user.js)。webpack在resolve阶段,会将引用的代码路径解析到实际文件路径。虽然webpack的resolve的官方配置里,没有修改路径这个功能,但是可以在函数描述(describe-resolve)事件里通过注册插件,来达到修改文件路径的目的。
S10071:将原始路径转化为第一绝对路径;
具体的,在本说明书实施例中,原始路径为相对路径格式;
在一些实施例中,原始路径示例如下:
路径一:modulDirectory:‘./src/modules/newDir1’,
路径二:modulRawDirectory:‘./src/modules/dashboard’,
其中,路径一为版本路径,路径二为基础路径,两者均为相对路径。
S10073:将请求路径转化为第二绝对路径;
具体的,在本说明书实施例中,请求路径用于确定路径处理模块的路径;可以根据第二绝对路径确定目标路径处理模块;并基于目标路径处理模块处理后续步骤。
S1009:判断第一绝对路径是否匹配基础路径的第一目录文件或优先路径的第二目录文件;
具体的,在本说明书实施例中,可以通过目标路径处理模块判断第一绝对路径是否匹配基础路径的第一目录文件或优先路径的第二目录文件;可以确定函数描述(describe-resolve)事件;并基于函数描述事件判断第一绝对路径是否从优先路径引用,从而确定第一绝对路径是否匹配基础路径的第一目录文件或优先路径的第二目录文件。
S100101:若第一绝对路径不匹配基础路径的第一目录文件或优先路径的第二目录文件,则进入下一路径解析阶段;
具体的,在本说明书实施例中,部分文件存储在基础路径、优先路径对应模块的其他模块中;若第一绝对路径不匹配基础路径的第一目录文件或优先路径的第二目录文件,则说明该目标文件不在第一目录文件或第二目录文件中,此时,可以进入下一路径解析阶段,根据第一目录文件、第二目录文件之外的其他目录文件进行路径解析。
S10011:若第一绝对路径匹配基础路径的第一目录文件或优先路径的第二目录文件,判断第一绝对路径与基础路径是否匹配;
具体的,在本说明书实施例中,若第一绝对路径匹配基础路径的第一目录文件或优先路径的第二目录文件,说明目标文件存储于基础路径的第一目录文件或优先路径的第二目录文件中,此时,可以依次将第一绝对路径与两个目标文件进行匹配,从而确定与第一绝对路径相匹配的路径。
S10013:若第一绝对路径与基础路径相匹配,将第一绝对路径转化为相对路径;
在本说明书实施例中,若第一绝对路径与基础路径相匹配,可以根据基础路径,将第一绝对路径转化为相对路径;具体的,可以根据基础路径的根目录,将第一绝对路径转化为相对路径。
S10015:判断相对路径是否在预设文件系统中;
具体的,预设文件系统为基于目标目录文件构建的文件系统,预设文件系统中文件路径携带目标目录文件的目标版本标识;可以通过预设文件系统确定目标文件的原始路径的更新方法。
S10017:若相对路径在预设文件系统中,将原始路径修改为引用优先路径目录;并跳转至步骤S1005;
具体的,在本说明书实施例中,若相对路径在预设文件系统中,说明可以使原始路径引用优先路径的根目录,将原始路径修改为引用优先路径目录,从而便于快速获取目标文件。
S10019:若相对路径不在预设文件系统中,则进入下一路径解析阶段;
在本说明书实施例中,若相对路径不在预设文件系统中,说明原始路径无法引用优先路径目录,此时,可以通过其他目录文件进行路径解析,进入下一路径解析阶段。
S10021:若第一绝对路径与基础路径不匹配,即第一绝对路径与优先路径相匹配,将第一绝对路径转化为相对路径;
具体的,在本说明书实施例中,若第一绝对路径与基础路径不匹配,则说明第一绝对路径与优先路径相匹配,此时,可以根据优选路径的目录文件,将第一绝对路径转化为相对路径。
S10023:判断相对路径是否在预设文件系统中;
具体的,在本说明书实施例中,若相对路径在预设文件系统中,则跳转至步骤S10019;
S10025:若相对路径不在预设文件系统中,将原始路径修改为引用基础路径目录;并跳转至步骤S1005。
具体的,在本说明书实施例中,若相对路径不在预设文件系统中,将原始路径修改为引用基础路径目录;具体的,可以根据基础路径的根目录,对原始路径进行修改。
在一些实施例中,上述文件路径更新方法对应插件,通过插件获取到对引用文件的请求,然后判断引用的这个文件是否从优先路径里面加载。如果是,就修改引用路径,重新执行resolve阶段,如果不是就按照正常的流程进行路径解析。通过这种方式,可以把引用路径可修改的功能添加到webpack的流程里。
本本申请实施例提升了代码开发效率,可以在5min新增一个项目版本并上线;降低了各版本应用的维护难度,不同版本间需求开发相比之前减少了2-3个小时;对于多版本的前端展示方案,可以通用webpack项目、代码调试、用例测试等场景。
在一个具体的实例中,如图11所示,图11为一种文件路径更新系统的结构示意图,包括:基础路径模块和优先路径模块,其中,基础路径模块中存储文件标识1、头部文件1以及账户标识1;优先路径模块中存储文件标识2、头部文件2以及账户标识2;基础路径模块以及优先路径模块中文件均为相对路径引用,例如,可以将基础路径中头部文件1修改为引用优先路径,将优先路径中文件标识2以及账户标识2修改为引用基础路径,从而实现路径的更新。
在一些实施例中,对于根路径的匹配,可以将优化路径和基础路径都转为了字符串,用字符串比对方式来判断文件的根目录引用;这样,将原来文件流路径的判断转换成了同一执行栈下的语句执行,提高了执行效率。
由以上本申请实施例提供的技术方案可见,本申请实施例获取目标文件对应的原始路径以及目标文件对应的目标应用的目标版本标识;基于目标版本标识,在预设数据库中查找与目标版本标识匹配的目录文件,得到目标目录文件;目标目录文件用于存储目标应用对应的目标业务特征;目标业务特征基于初始目录文件中的初始业务特征以及目标应用的定制业务参数生成;预设数据库基于至少两个预设应用各自对应的预设版本标识以及预设目录文件构建得到;每个预设应用对应的预设目录文件基于初始目标文件以及每个预设应用对应的预设定制业务参数构建得到;获取目标目录文件对应的第一路径集以及初始目录文件对应的第二路径集;基于第一路径集以及第二路径集,确定目标文件对应的相对路径;基于相对路径与预设文件系统的匹配结果,对原始路径进行更新,得到更新路径;预设文件系统为基于目标目录文件构建的文件系统,预设文件系统中文件路径携带目标目录文件的目标版本标识;基于更新路径,确定目标文件;上述目标文件用于渲染目标应用中页面。本申请将目标应用的定制业务参数对应的目标业务特征进行单独存储,构建对应的目标目录文件,从而便于对目标目录文件进行单独维护,提高了目标应用的定制业务的开发效率和维护效率;本申请根据目标目录文件对应的第一路径集以及初始目录文件对应的第二路径集;基于第一路径集以及第二路径集,确定目标文件对应的相对路径;基于相对路径与预设文件系统的匹配结果,对原始路径进行更新,得到更新路径;从而可以基于更新路径快速获取目标文件,提高了目标应用中页面的渲染效率。
本申请实施例还提供了一种页面渲染文件的路径更新装置,如图12所示,上述装置包括:
目标版本标识获取模块1210,用于获取目标文件对应的原始路径以及上述目标文件对应的目标应用的目标版本标识;
目标目录文件确定模块1220,用于基于上述目标版本标识,在预设数据库中查找与上述目标版本标识匹配的目录文件,得到目标目录文件;上述目标目录文件用于存储上述目标应用对应的目标业务特征;上述目标业务特征基于初始目录文件中的初始业务特征以及上述目标应用的定制业务参数生成;上述预设数据库基于至少两个预设应用各自对应的预设版本标识以及预设目录文件构建得到;每个预设应用对应的预设目录文件基于上述初始目标文件以及上述每个预设应用对应的预设定制业务参数构建得到;
路径集获取模块1230,用于获取上述目标目录文件对应的第一路径集以及上述初始目录文件对应的第二路径集;
相对路径确定模块1240,用于基于上述第一路径集以及上述第二路径集,确定上述目标文件对应的相对路径;
路径更新模块1250,用于基于上述相对路径与预设文件系统的匹配结果,对上述原始路径进行更新,得到更新路径;上述预设文件系统为基于上述目标目录文件构建的文件系统,上述预设文件系统中文件路径携带上述目标目录文件的目标版本标识;
目标文件确定模块1260,用于基于上述更新路径,确定上述目标文件;上述目标文件用于渲染上述目标应用中页面。
在一些实施例中,上述相对路径确定模块包括:
路径转化子模块,用于将上述目标文件对应的原始路径转化为绝对路径;
候选路径集确定子模块,用于将上述第一路径集以及上述第二路径集,确定为候选路径集;
相对路径确定子模块,用于若上述绝对路径为上述候选路径集中路径,将上述绝对路径转化成相对路径,得到上述目标文件对应的相对路径。
在一些实施例中,上述路径更新模块包括:
匹配结果确定子模块,用于确定上述相对路径与预设文件系统的匹配结果;
路径集确定子模块,用于确定上述绝对路径所属的路径集;
路径更新子模块,用于基于上述匹配结果以及上述绝对路径所属的路径集,对上述原始路径进行更新,得到更新路径。
在一些实施例中,上述路径更新子模块包括:
第一更新单元,用于若上述相对路径与上述预设文件系统匹配失败,且上述绝对路径为上述第一路径集中路径,将上述原始路径中的根路径修改为上述初始目录文件的根路径,得到第一更新路径。
在一些实施例中,上述路径更新子模块包括:
第二更新单元,用于若上述相对路径与上述预设文件系统匹配成功,且上述绝对路径为上述第二路径集中路径,将上述原始路径中的根路径修改为上述目标目录文件的根路径,得到第二更新路径。
在一些实施例中,上述匹配结果确定子模块包括:
预设临时变量构建单元,用于构建上述预设文件系统对应的预设临时变量,作为当前临时变量;
数组转换单元,用于将上述相对路径转换成多个数组,每个数组对应一个级别的目录;
遍历单元,用于遍历上述多个数组,确定每个数组与上述当前临时变量的匹配结果;
判断单元,用于若任一数组与上述当前临时变量匹配成功,判断上述任一数组对应的目录是否为预设级别的目录以及确定上述当前临时变量匹配的数据信息;
第一匹配单元,用于若上述任一数组对应的目录为上述预设级别的目录,且上述当前临时变量匹配的数据信息为目录,确定上述相对路径与预设文件系统匹配失败。
在一些实施例中,上述装置还包括:
步骤跳转模块,用于若上述任一数组对应的目录非预设级别的目录,且上述当前临时变量匹配的数据信息为目录,将匹配的目录重新作为上述当前临时变量,并跳转至上述遍历上述多个数组,确定每个数组与上述当前临时变量的匹配结果的步骤。
在一些实施例中,上述路径更新模块包括:
根路径确定子模块,用于确定上述目标文件对应的根路径以及上述相对路径;
第一匹配结果确定子模块,用于确定上述根路径与上述初始目录文件的第一匹配结果;
第二匹配结果确定子模块,用于确定上述相对路径与上述预设文件系统的第二匹配结果;
更新路径确定子模块,用于基于上述第一匹配结果以及上述第二匹配结果,对上述原始路径进行更新,得到更新路径。
在一些实施例中,上述更新路径确定子模块包括:
第一单元,用于若上述第一匹配结果为匹配成功结果且上述第二匹配结果为匹配成功结果,将上述原始路径中的根路径修改为上述目标目录文件的根路径,得到更新路径。
在一些实施例中,上述更新路径确定单元包括:
第二单元,用于若上述第一匹配结果为匹配失败结果且上述第二匹配结果为匹配失败结果,将上述原始路径中的根路径修改为上述初始目录文件的根路径,得到更新路径。
在一些实施例中,上述装置还可以包括:预设数据库构建模块,上述预设数据库构建模块包括:
预设定制业务参数获取子模块,用于获取至少两个预设应用各自对应的预设定制业务参数;上述至少两个预设应用包括上述目标应用;
预设目录文件构建子模块,用于基于上述初始目标文件以及上述至少两个预设应用各自对应的预设定制业务参数,构建上述至少两个预设应用各自对应的预设目录文件;
预设版本标识确定子模块,用于确定上述至少两个预设应用各自对应的预设版本标识;
预设数据库构建子模块,用于基于上述至少两个预设应用各自对应的预设版本标识以及预设目录文件,构建上述预设数据库。
在一些实施例中,上述预设目录文件构建子模块可以包括:
初始业务特征获取单元,用于从上述初始目标文件中获取每个预设定制业务参数对应的初始业务特征;
参数调整单元,用于基于每个预设定制业务参数,调整上述每个预设定制业务参数对应的初始业务特征,得到每个预设应用对应的预设业务特征;
文件构建单元,用于基于上述每个预设应用对应的预设业务特征,构建每个预设应用对应的预设目录文件。
上述的装置实施例中的装置与方法实施例基于同样地发明构思。
本申请实施例提供了一种页面渲染文件的路径更新设备,该设备包括处理器和存储器,该存储器中存储有至少一条指令或至少一段程序,该至少一条指令或至少一段程序由该处理器加载并执行以实现如上述方法实施例所提供的页面渲染文件的路径更新方法。
本申请的实施例还提供了一种计算机存储介质,上述存储介质可设置于终端之中以保存用于实现方法实施例中一种页面渲染文件的路径更新方法相关的至少一条指令或至少一段程序,该至少一条指令或至少一段程序由该处理器加载并执行以实现上述方法实施例提供的页面渲染文件的路径更新方法。
本申请的实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行以实现上述方法实施例提供的页面渲染文件的路径更新方法。
可选地,在本申请实施例中,存储介质可以位于计算机网络的多个网络服务器中的至少一个网络服务器。可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例上述存储器可用于存储软件程序以及模块,处理器通过运行存储在存储器的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、功能所需的应用程序等;存储数据区可存储根据上述设备的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器还可以包括存储器控制器,以提供处理器对存储器的访问。
本申请实施例所提供的页面渲染文件的路径更新方法实施例可以在移动终端、计算机终端、服务器或者类似的运算装置中执行。以运行在服务器上为例,图13是本申请实施例提供的一种页面渲染文件的路径更新方法的服务器的硬件结构框图。如图13所示,该服务器1300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(Central Processing Units,CPU)1310(中央处理器1310可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器1330,一个或一个以上存储应用程序1323或数据1322的存储介质1320(例如一个或一个以上海量存储设备)。其中,存储器1330和存储介质1320可以是短暂存储或持久存储。存储在存储介质1320的程序可以包括一个或一个以上模块,每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1310可以设置为与存储介质1320通信,在服务器1300上执行存储介质1320中的一系列指令操作。服务器1300还可以包括一个或一个以上电源1360,一个或一个以上有线或无线网络接口1350,一个或一个以上输入输出接口1340,和/或,一个或一个以上操作系统1321,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
输入输出接口1340可以用于经由一个网络接收或者发送数据。上述的网络具体实例可包括服务器1300的通信供应商提供的无线网络。在一个实例中,输入输出接口1340包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,输入输出接口1340可以为射频(RadioFrequency,RF)模块,其用于通过无线方式与互联网进行通讯。
本领域普通技术人员可以理解,图13所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,服务器1300还可包括比图13中所示更多或者更少的组件,或者具有与图13所示不同的配置。
由上述本申请提供的页面渲染文件的路径更新方法、装置、设备或存储介质的实施例可见,本申请获取目标文件对应的原始路径以及目标文件对应的目标应用的目标版本标识;基于目标版本标识,在预设数据库中查找与目标版本标识匹配的目录文件,得到目标目录文件;目标目录文件用于存储目标应用对应的目标业务特征;目标业务特征基于初始目录文件中的初始业务特征以及目标应用的定制业务参数生成;预设数据库基于至少两个预设应用各自对应的预设版本标识以及预设目录文件构建得到;每个预设应用对应的预设目录文件基于初始目标文件以及每个预设应用对应的预设定制业务参数构建得到;获取目标目录文件对应的第一路径集以及初始目录文件对应的第二路径集;基于第一路径集以及第二路径集,确定目标文件对应的相对路径;基于相对路径与预设文件系统的匹配结果,对原始路径进行更新,得到更新路径;预设文件系统为基于目标目录文件构建的文件系统,预设文件系统中文件路径携带目标目录文件的目标版本标识;基于更新路径,确定目标文件;上述目标文件用于渲染目标应用中页面。本申请将目标应用的定制业务参数对应的目标业务特征进行单独存储,构建对应的目标目录文件,从而便于对目标目录文件进行单独维护,提高了目标应用的定制业务的开发效率和维护效率;本申请根据目标目录文件对应的第一路径集以及初始目录文件对应的第二路径集;基于第一路径集以及第二路径集,确定目标文件对应的相对路径;基于相对路径与预设文件系统的匹配结果,对原始路径进行更新,得到更新路径;从而可以基于更新路径快速获取目标文件,提高了目标应用中页面的渲染效率。
需要说明的是:上述本申请实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备、存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (14)
1.一种页面渲染文件的路径更新方法,其特征在于,所述方法包括:
获取目标文件对应的原始路径以及所述目标文件对应的目标应用的目标版本标识;
基于所述目标版本标识,在预设数据库中查找与所述目标版本标识匹配的目录文件,得到目标目录文件;所述目标目录文件用于存储所述目标应用对应的目标业务特征;所述目标业务特征基于初始目录文件中的初始业务特征以及所述目标应用的定制业务参数生成;所述预设数据库基于至少两个预设应用各自对应的预设版本标识以及预设目录文件构建得到;每个预设应用对应的预设目录文件基于所述初始目标文件以及所述每个预设应用对应的预设定制业务参数构建得到;
获取所述目标目录文件对应的第一路径集以及所述初始目录文件对应的第二路径集;
基于所述第一路径集以及所述第二路径集,确定所述目标文件对应的相对路径;
基于所述相对路径与预设文件系统的匹配结果,对所述原始路径进行更新,得到更新路径;所述预设文件系统为基于所述目标目录文件构建的文件系统,所述预设文件系统中文件路径携带所述目标目录文件的目标版本标识;
基于所述更新路径,确定所述目标文件;所述目标文件用于渲染所述目标应用中页面。
2.根据权利要求1所述的方法,其特征在于,所述基于所述第一路径集以及所述第二路径集,确定所述目标文件对应的相对路径,包括:
将所述目标文件对应的原始路径转化为绝对路径;
将所述第一路径集以及所述第二路径集,确定为候选路径集;
若所述绝对路径为所述候选路径集中路径,将所述绝对路径转化成相对路径,得到所述目标文件对应的相对路径。
3.根据权利要求2所述的方法,其特征在于,所述基于所述相对路径与预设文件系统的匹配结果,对所述原始路径进行更新,得到更新路径,包括:
确定所述相对路径与预设文件系统的匹配结果;
确定所述绝对路径所属的路径集;
基于所述匹配结果以及所述绝对路径所属的路径集,对所述原始路径进行更新,得到更新路径。
4.根据权利要求3所述的方法,其特征在于,所述基于所述匹配结果以及所述绝对路径所属的路径集,对所述原始路径进行更新,得到更新路径,包括:
若所述相对路径与所述预设文件系统匹配失败,且所述绝对路径为所述第一路径集中路径,将所述原始路径中的根路径修改为所述初始目录文件的根路径,得到第一更新路径。
5.根据权利要求3所述的方法,其特征在于,所述基于所述匹配结果以及所述绝对路径所属的路径集,对所述原始路径进行更新,得到更新路径,包括:
若所述相对路径与所述预设文件系统匹配成功,且所述绝对路径为所述第二路径集中路径,将所述原始路径中的根路径修改为所述目标目录文件的根路径,得到第二更新路径。
6.根据权利要求3所述的方法,其特征在于,所述确定所述相对路径与预设文件系统的匹配结果,包括:
构建所述预设文件系统对应的预设临时变量,作为当前临时变量;
将所述相对路径转换成多个数组,每个数组对应一个级别的目录;
遍历所述多个数组,确定每个数组与所述当前临时变量的匹配结果;
若任一数组与所述当前临时变量匹配成功,判断所述任一数组对应的目录是否为预设级别的目录以及确定所述当前临时变量匹配的数据信息;
若所述任一数组对应的目录为所述预设级别的目录,且所述当前临时变量匹配的数据信息为目录,确定所述相对路径与预设文件系统匹配失败。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
若所述任一数组对应的目录非预设级别的目录,且所述当前临时变量匹配的数据信息为目录,将匹配的目录重新作为所述当前临时变量,并跳转至所述遍历所述多个数组,确定每个数组与所述当前临时变量的匹配结果的步骤。
8.根据权利要求1所述的方法,其特征在于,所述基于所述相对路径与预设文件系统的匹配结果,对所述原始路径进行更新,得到更新路径,包括:
确定所述目标文件对应的根路径以及所述相对路径;
确定所述根路径与所述初始目录文件的第一匹配结果;
确定所述相对路径与所述预设文件系统的第二匹配结果;
基于所述第一匹配结果以及所述第二匹配结果,对所述原始路径进行更新,得到所述更新路径。
9.根据权利要求8所述的方法,其特征在于,所述基于所述第一匹配结果以及所述第二匹配结果,对所述原始路径进行更新,得到所述更新路径,包括:
若所述第一匹配结果为匹配成功结果且所述第二匹配结果为匹配成功结果,将所述原始路径中的根路径修改为所述目标目录文件的根路径,得到所述更新路径。
10.根据权利要求8所述的方法,其特征在于,所述基于所述第一匹配结果以及所述第二匹配结果,对所述原始路径进行更新,得到所述更新路径,包括:
若所述第一匹配结果为匹配失败结果且所述第二匹配结果为匹配失败结果,将所述原始路径中的根路径修改为所述初始目录文件的根路径,得到所述更新路径。
11.根据权利要求1所述的方法,其特征在于,所述预设数据库的构建方法包括:
获取所述至少两个预设应用各自对应的预设定制业务参数;所述至少两个预设应用包括所述目标应用;
基于所述初始目标文件以及所述至少两个预设应用各自对应的预设定制业务参数,构建所述至少两个预设应用各自对应的预设目录文件;
确定所述至少两个预设应用各自对应的预设版本标识;
基于所述至少两个预设应用各自对应的预设版本标识以及预设目录文件,构建所述预设数据库。
12.根据权利要求11所述的方法,其特征在于,所述基于所述初始目标文件以及所述至少两个预设应用各自对应的预设定制业务参数,构建所述至少两个预设应用各自对应的预设目录文件,包括:
从所述初始目标文件中获取每个预设定制业务参数对应的初始业务特征;
基于每个预设定制业务参数,调整所述每个预设定制业务参数对应的初始业务特征,得到每个预设应用对应的预设业务特征;
基于所述每个预设应用对应的预设业务特征,构建每个预设应用对应的预设目录文件。
13.一种页面渲染文件的路径更新装置,其特征在于,所述装置包括:
目标版本标识获取模块,用于获取目标文件对应的原始路径以及所述目标文件对应的目标应用的目标版本标识;
目标目录文件确定模块,用于基于所述目标版本标识,在预设数据库中查找与所述目标版本标识匹配的目录文件,得到目标目录文件;所述目标目录文件用于存储所述目标应用对应的目标业务特征;所述目标业务特征基于初始目录文件中的初始业务特征以及所述目标应用的定制业务参数生成;所述预设数据库基于至少两个预设应用各自对应的预设版本标识以及预设目录文件构建得到;每个预设应用对应的预设目录文件基于所述初始目标文件以及所述每个预设应用对应的预设定制业务参数构建得到;
路径集获取模块,用于获取所述目标目录文件对应的第一路径集以及所述初始目录文件对应的第二路径集;
相对路径确定模块,用于基于所述第一路径集以及所述第二路径集,确定所述目标文件对应的相对路径;
路径更新模块,用于基于所述相对路径与预设文件系统的匹配结果,对所述原始路径进行更新,得到更新路径;所述预设文件系统为基于所述目标目录文件构建的文件系统,所述预设文件系统中文件路径携带所述目标目录文件的目标版本标识;
目标文件确定模块,用于基于所述更新路径,确定所述目标文件;所述目标文件用于渲染所述目标应用中页面。
14.一种计算机存储介质,其特征在于,所述计算机存储介质存储有至少一条指令或至少一段程序,所述至少一条指令或至少一段程序由处理器加载并执行以实现如权利要求1-12任一所述的页面渲染文件的路径更新方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211114571.9A CN117742703A (zh) | 2022-09-14 | 2022-09-14 | 页面渲染文件的路径更新方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211114571.9A CN117742703A (zh) | 2022-09-14 | 2022-09-14 | 页面渲染文件的路径更新方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117742703A true CN117742703A (zh) | 2024-03-22 |
Family
ID=90253166
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211114571.9A Pending CN117742703A (zh) | 2022-09-14 | 2022-09-14 | 页面渲染文件的路径更新方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117742703A (zh) |
-
2022
- 2022-09-14 CN CN202211114571.9A patent/CN117742703A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108628947B (zh) | 一种业务规则匹配处理方法、装置及处理设备 | |
US8327329B2 (en) | Application dehydration, synchronization, and rehydration | |
CN111435367B (zh) | 知识图谱的构建方法、系统、设备及存储介质 | |
CN111045683A (zh) | 小程序代码编译方法、装置、设备及介质 | |
WO2022116437A1 (zh) | 多架构静态库冲突处理方法、装置、设备及存储介质 | |
CN109285024B (zh) | 在线特征确定方法、装置、电子设备及存储介质 | |
CN112015771B (zh) | 数据检索方法、装置、电子设备及计算机存储介质 | |
CN104408118A (zh) | 数据库的创建方法和装置 | |
CN112800197A (zh) | 一种目标故障信息的确定方法和装置 | |
US9411618B2 (en) | Metadata-based class loading using a content repository | |
CN111815467A (zh) | 审核方法以及装置 | |
CN104361040A (zh) | 一种定制查询的方法及装置 | |
CN116560683A (zh) | 软件更新方法、装置、设备及存储介质 | |
CN110737458A (zh) | 一种代码更新方法和相关装置 | |
CN111556127B (zh) | 一种可穿戴设备升级方法及相关设备 | |
CN113536748A (zh) | 一种生成图表数据的方法和装置 | |
CN117742703A (zh) | 页面渲染文件的路径更新方法、装置及存储介质 | |
CN116468062A (zh) | 基于图形码的页面展示方法及装置 | |
CN115840598A (zh) | 基于应用市场的微前端架构系统、开发方法、设备和介质 | |
CN116361287A (zh) | 路径解析方法、装置以及系统 | |
CN109740074A (zh) | 参数配置信息的处理方法、装置及设备 | |
CN113495723B (zh) | 一种调用功能组件的方法、装置及存储介质 | |
CN117009430A (zh) | 数据管理方法、装置和存储介质及电子设备 | |
CN110471708B (zh) | 基于可重用组件的配置项获取的方法及装置 | |
CN114237736A (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 |