CN117708063A - 一种文件处理方法、装置、电子设备和存储介质 - Google Patents
一种文件处理方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN117708063A CN117708063A CN202311807315.2A CN202311807315A CN117708063A CN 117708063 A CN117708063 A CN 117708063A CN 202311807315 A CN202311807315 A CN 202311807315A CN 117708063 A CN117708063 A CN 117708063A
- Authority
- CN
- China
- Prior art keywords
- selector
- file
- style
- service
- identifiers
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 22
- 238000002955 isolation Methods 0.000 claims abstract description 67
- 238000000034 method Methods 0.000 claims abstract description 44
- 238000012545 processing Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 16
- 238000013507 mapping Methods 0.000 claims description 8
- 230000000694 effects Effects 0.000 abstract description 16
- 238000004891 communication Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/164—File meta data generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/37—Compiler construction; Parser generation
-
- 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
-
- 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/72—Code refactoring
-
- 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
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Human Computer Interaction (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种文件处理方法、装置、电子设备和存储介质,涉及软件开发领域,该方法包括:根据预设隔离规则,为各个样式文件中的选择器配置局部标识或全局标识;获取各个业务文件的特征标识,并为业务文件中的文本对象模型以及与业务文件匹配的样式文件,分别配置对应业务文件的特征标识;为各个样式文件中具备局部标识的目标选择器,配置所在样式文件的特征标识,以通过配置完成的特征标识隔离所述目标选择器。本发明实施例的技术方案,既避免了由于前缀选择器未添加或者重复命名导致的隔离不彻底现象发生,提升了选择器隔离效果,又避免了选择器与元素的手动绑定,提高了选择器隔离效率。
Description
技术领域
本发明涉及软件开发领域,尤其涉及一种文件处理方法、装置、电子设备和存储介质。
背景技术
在网页的代码开发中,常常需要对元素的展示样式进行隔离,也即使该元素的当前样式仅展示在特定的页面,以此避免对其它页面中元素样式的影响。
现有技术中,开发人员通常是在元素样式的选择器前添加前缀选择器,以通过前缀选择器使该选择器仅在当前业务范围生效;或者通过手动方式,将各个选择器分别与对应的页面元素进行绑定,以使该选择器仅针对绑定元素生效。
然而,添加前缀选择器的隔离方式,常常由于开发人员的疏忽导致出现忘记添加的情况,并且不同开发人员在添加前缀选择器时往往会出现重复命名,进而出现隔离不彻底现象,隔离效果较差;而元素绑定的隔离方式,隔离效率较低,特别是针对已存在的历史项目,需要耗费大量的人力成本改动代码。
发明内容
本发明提供了一种文件处理方法、装置、电子设备及存储介质,以解决样式文件中选择器的隔离效果较差、隔离效率较低的问题。
根据本发明的一方面,提供了一种文件处理方法,包括:
根据预设隔离规则,为各个样式文件中的选择器配置局部标识或全局标识;
获取各个业务文件的特征标识,并为业务文件中的文本对象模型以及与业务文件匹配的样式文件,分别配置对应业务文件的特征标识;
为各个样式文件中具备局部标识的目标选择器,配置所在样式文件的特征标识,以通过配置完成的特征标识隔离所述目标选择器。
所述获取各个业务文件的特征标识,包括:根据业务文件的存储路径生成匹配的路径哈希值,并将所述路径哈希值作为所述业务文件的特征标识。文件路径基于文件存储地址直接获取,不需要对文件进行属性解析操作,简化了特征标识的获取流程,提高了特征标识的获取效率。
所述为业务文件中的文本对象模型以及与业务文件匹配的样式文件,分别配置对应业务文件的特征标识,包括:根据业务样式映射表,获取与当前业务文件匹配的目标样式文件,并将当前业务文件的特征标识配置给所述目标样式文件。不但减少了业务文件的代码量,即将业务文件对样式文件的调用代码移出业务文件,同时,提高了业务文件的更新便利性,即业务文件与样式文件的调用关系,只需要对业务样式映射表进行配置更新即可
在为各个样式文件中具备局部标识的目标选择器,配置所在样式文件的特征标识之后,包括:若确定所述目标选择器包含动画属性,将所述目标选择器的特征标识配置给所述动画属性;获取与所述动画属性匹配的动画选择器,并将所述动画属性的特征标识配置给所述动画选择器。以此针对动画展示元素实现了选择器维度的完整隔离,避免当前页面中的动画效果影响其它网页中同类元素的展示样式。
所述为各个样式文件中具备局部标识的目标选择器,配置所在样式文件的特征标识,包括:若当前选择器包括多个子选择器,获取当前选择器中末端子选择器的标识信息,并将末端子选择器的标识信息作为当前选择器的标识信息;其中,所述标识信息包括局部标识或全局标识。既确保了隔离选择器与非隔离选择器配置时的自由嵌套,即隔离选择器可以包含非隔离子选择器,非隔离选择器也可以包含隔离子选择器,又确保了选择器以一个整体对外呈现统一的隔离或非隔离状态,确保了选择器的隔离与否具有唯一性。
在将末端子选择器的标识信息作为当前选择器的标识信息之后,还包括:若当前选择器的标识信息为局部标识,为所述末端子选择器配置匹配的属性选择器,并将当前选择器所在样式文件的特征标识,配置给所述属性选择器。进一步降低了选择器属性信息的配置难度,简化了配置特征标识后的代码结构。
所述根据预设隔离规则,为各个样式文件中的选择器配置局部标识或全局标识,包括:根据所述样式文件的文件类型或者语言类型,构建匹配的局部标识和全局标识。既适应了样式文件的语法结构,确保了样式文件的代码准确性,又无需配置额外的解析器,简化了样式文件的编译流程,在无需更改原有代码逻辑的同时,提高了样式文件的编译效率。
根据本发明的另一方面,提供了一种文件处理装置,包括:
标识配置执行模块,用于根据预设隔离规则,为各个样式文件中的选择器配置局部标识或全局标识;
特征标识获取模块,用于获取各个业务文件的特征标识,并为业务文件中的文本对象模型以及与业务文件匹配的样式文件,分别配置对应业务文件的特征标识;
选择器配置模块,用于为各个样式文件中具备局部标识的目标选择器,配置所在样式文件的特征标识,以通过配置完成的特征标识隔离所述目标选择器。
根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的文件处理方法。
根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的文件处理方法。
本发明实施例的技术方案,在为样式文件中的选择器配置局部标识或全局标识之后,为业务文件中的文本对象模型以及与业务文件匹配的样式文件,分别配置对应业务文件的特征标识;进而为样式文件中具备局部标识的目标选择器,配置所在样式文件的特征标识,以通过配置完成的特征标识隔离目标选择器。相比于现有的选择器隔离方式,既避免了由于前缀选择器未添加或者重复命名导致的隔离不彻底现象发生,提升了选择器隔离效果,又避免了选择器与元素的手动绑定,提高了选择器隔离效率。
应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例一提供的一种文件处理方法的流程图;
图2是根据本发明实施例二提供的另一种文件处理方法的流程图;
图3A是根据本发明实施例三提供的又一种文件处理方法的流程图;
图3B是根据本发明具体应用场景一提供的再一种文件处理方法的流程图;
图4是根据本发明实施例四提供的一种文件处理装置的结构示意图;
图5是实现本发明实施例的文件处理方法的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例一
图1为本发明实施例一提供的一种文件处理方法的流程图,本实施例可适用于通过将样式文件与业务文件的特征标识相关联,对样式文件中的选择器进行隔离的情况,该方法可以由文件处理装置来执行,该文件处理装置可以采用硬件和/或软件的形式实现,该文件处理装置可以配置于电子设备中。如图1所示,该方法包括:
S101、根据预设隔离规则,为各个样式文件中的选择器配置局部标识或全局标识。
业务文件是用于构建用户界面(User Interface,UI)和网页(Web Page)的代码文件,其记录了各个页面中的元素数量、元素类型以及元素布局,浏览器或者应用程序(application)通过运行业务文件,展示匹配的一种或多种页面。业务文件可以通过多种语言开发完成,例如,JavaScript(JS)语言,业务文件即为开发完成的JS文件;同时,为了确保业务文件的功能完整性,业务文件可以基于相应的库文件或者库函数(例如,React)开发完成;其中,JavaScript是一种轻量级的编程语言,其具有代码开发量少且运行速率快的特点;React是一种用于构建Web页面和原生交互界面的库,其具有组件化管理且高效运行的特点。
样式文件是用来表现业务文件具体样式的代码文件,其不仅可以静态地修饰页面,即配置页面中各个元素的静态参数,还可以动态地对网页中的元素进行格式化;样式文件同样可以通过多种语言开发完成,例如,层叠样式表(Cascading Style Sheets,CSS)或Less(Leaner Style Sheets)语言,样式文件即为开发完成的CSS文件或者Less文件;其中,CSS语言不但能够对网页中元素位置的排版进行像素级精确控制,而且支持多种字体和字号样式;Less语言作为CSS的预处理语言,在CSS的基础上配置了变量、混合和函数等多种功能,进一步丰富了元素展示样式。
对于一个软件开发项目而言,由于代码量较多,通常需要由多个业务文件共同承载业务代码,因此,一个软件开发项目实际上对应一个业务文件集,该业务文件集包括多个业务文件,以及与各个业务文件对应的配置文件和依赖文件;同样的,一个软件开发项目也需要由多个样式文件共同承载样式代码,因此,一个软件开发项目实际上也对应一个样式文件集,该样式文件集包括多个样式文件;可选的,在本发明实施例中,对业务文件和样式文件的数量和语言类型均不作具体限定。
选择器是样式文件中控制元素样式的工具,一个选择器可以控制一个或多个元素的样式,一个元素的样式也可以被一个或多个选择器控制;局部标识,表示该选择器仅针对部分页面中的一个或多个元素有效,并非适用于所有页面,即局部有效,此时需要对该选择器进行隔离;全局标识,表示该选择器针对全部页面中的一个或多个元素有效,即适用于所有页面,即全局有效,此时不需要对该选择器进行隔离。
预设隔离规则可以由开发人员预先制定完成,根据本次软件项目的开发需求,将各个样式文件中的一个或多个选择器设置为待隔离;当前电子设备在获取到上述预设隔离规则时,可以通过关键词查询的方式,查找样式文件中的一个或多个选择器,并为上述选择器配置局部标识,其它选择器则配置全局标识。
此外,预设隔离规则还包括根据当前选择器对应的目标对象的出现频次,确定为当前选择器配置局部标识还是全局标识;其中,目标对象包括样式、元素以及文档对象模型(Document Object Model,DOM)中至少一个;出现频次可以是该目标对象在所有业务文件中的出现总数(即总共出现了多少次),也可以是出现该目标对象的业务文件数量(即在多少个业务文件中出现了该目标对象);如果上述出现频次大于等于预设频次阈值,则为当前选择器配置全局标识;如果上述出现频次小于预设频次阈值,则为当前选择器配置局部标识,由此实现了局部标识和全局标识的自动标注。
可选的,在本发明实施例中,根据预设隔离规则,为各个样式文件中的选择器配置局部标识或全局标识,包括:根据样式文件的文件类型或者语言类型,构建匹配的局部标识和全局标识。以样式文件为CSS文件为例,可以构建“::scoped{}”作为局部标识,构建“::global{}”作为全局标识,并通过上述局部标识或者全局标识包裹各个选择器;由此根据样式文件的文件类型或者语言类型,构建匹配的局部标识和全局标识,既适应了样式文件的语法结构,确保了样式文件的代码准确性,又无需配置额外的解析器,简化了样式文件的编译流程,在无需更改原有代码逻辑的同时,提高了样式文件的编译效率。
S102、获取各个业务文件的特征标识,并为业务文件中的文本对象模型以及与业务文件匹配的样式文件,分别配置对应业务文件的特征标识。
在对样式文件完成标识信息配置之后,启动与业务文件匹配的业务编译器,以对各个业务文件进行编译;业务编译器可以预先配置于业务文件集中;以上述技术方案为例,当业务文件为JS文件时,业务编译器可以选择Babel插件;其中,Babel插件是一个基于浏览器且适用于JavaScript特性的交互式解释器。在业务编译器编译业务文件的同时,可以同步获取各个业务文件的特征标识;其中,特别标识作为业务文件的身份特征,具有唯一性,即不同的业务文件具备不同的特征标识。
特征标识可以通过排序的方式获取,例如,根据各个业务文件的大小或者创建时间进行排序,排序结果即可作为各个业务文件的特征标识;还可以根据各个业务文件的属性信息(例如,文件大小、创建时间和文件类型等)计算各个业务文件的属性哈希(Hash)值,并将属性哈希值作为业务文件的特征标识;此外,还可以根据业务文件的文本内容计算文本哈希值,由于每个业务文件的代码文本不同,因此,通过文本内容获取到的文本哈希值同样具备了唯一性。
可选的,在本发明实施例中,获取各个业务文件的特征标识,包括:根据业务文件的存储路径生成匹配的路径哈希值,并将路径哈希值作为业务文件的特征标识。每个业务文件的文件路径同样具备唯一性,可以根据各个业务文件的文件路径,获取匹配的路径哈希值,并向路径哈希值作为业务文件的特征标识;相比于通过文本内容计算获取文本哈希值,文件路径的字符数量较少,字符组成结构较为简单,由此提高了文本标识的获取效率;相比于通过文件属性计算获取属性哈希值,文件路径基于文件存储地址直接获取,不需要对文件进行属性解析操作,简化了特征标识的获取流程,提高了特征标识的获取效率。
在获取到当前业务文件的文件标识后,为当前业务文件中的每个DOM均配置该业务文件的特征标识;其中,DOM本质上是一个接口,样式文件通过DOM接口控制业务文件中各种元素的样式;此外,每个业务文件的业务代码中,还记录了当前业务文件调用的样式文件,因此,通过对业务文件中指定代码段落的解析,即可获取当前业务文件调用的样式文件,也即与当前业务文件匹配的样式文件,并为该样式文件也配置当前业务文件的特征标识。
可选的,在本发明实施例中,为业务文件中的文本对象模型以及与业务文件匹配的样式文件,分别配置对应业务文件的特征标识,包括:根据业务样式映射表,获取与当前业务文件匹配的目标样式文件,并将当前业务文件的特征标识配置给目标样式文件。
具体的,各个业务文件与样式文件的调用关系,可以记录在预先构建完成的业务样式映射表中,在编译业务文件时,通业务样式映射表获取与当前业务文件匹配的样式文件,进而在获取到当前业务文件的特征标识之后,将该特征标识同时赋予匹配的样式文件,由此不但减少了业务文件的代码量,即将业务文件对样式文件的调用代码移出业务文件,同时,提高了业务文件的更新便利性,即业务文件与样式文件的调用关系,只需要对业务样式映射表进行配置更新即可。
S103、为各个样式文件中具备局部标识的目标选择器,配置所在样式文件的特征标识,以通过配置完成的特征标识隔离目标选择器。
在业务编译器完成各个业务文件的编译之后,启动与样式文件的样式编译器,以对各个样式文件进行编译;样式编译器同样可以预先配置于样式文件集中;以上述技术方案为例,当样式文件为CSS文件或者Less文件时,样式编译器可以选择PostCSS插件;其中,PostCSS插件是一个JavaScript转换工具,可以识别并转换CSS文件和Less文件中的代码。
在样式编译器编译样式文件的同时,获取上述技术方案中各个样式文件已配置的特征标识,该特征标识实际上是对应的业务文件的特征标识。遍历样式文件中的每个选择器,如果当前选择器配置有全局标识,则跳过当前选择器继续遍历获取其它选择器;如果当前选择器配置有局部标识,则将当前样式文件的特征标识作为属性信息配置给当前选择器,其表示当前选择器仅会针对具备该特征标识的DOM生效,以此实现了该选择器记录的展示样式的隔离。
本发明实施例的技术方案,在为样式文件中的选择器配置局部标识或全局标识之后,为业务文件中的文本对象模型以及与业务文件匹配的样式文件,分别配置对应业务文件的特征标识;进而为样式文件中具备局部标识的目标选择器,配置所在样式文件的特征标识,以通过配置完成的特征标识隔离目标选择器。相比于现有的选择器隔离方式,既避免了由于前缀选择器未添加或者重复命名导致的隔离不彻底现象发生,提升了选择器隔离效果,又避免了选择器与元素的手动绑定,提高了选择器隔离效率。
实施例二
图2为本发明实施例二提供的一种文件处理方法的流程图,本实施例与上述实施例之间的关系在于,如果目标选择器中包含动画属性,在为目标选择器配置所在样式文件的特征标识之后,还需要针对动画属性进行后续处理。如图2所示,该方法包括:
S201、根据预设隔离规则,为各个样式文件中的选择器配置局部标识或全局标识。
S202、获取各个业务文件的特征标识,并为业务文件中的文本对象模型以及与业务文件匹配的样式文件,分别配置对应业务文件的特征标识。
S203、为各个样式文件中具备局部标识的目标选择器,配置所在样式文件的特征标识。
S204、若确定目标选择器包含动画属性,将目标选择器的特征标识配置给动画属性。
样式文件不但可以静态地修饰页面,还可以为网页中的元素提供动画效果,以增强网页的观赏性和功能性;在为目标选择器配置所在样式文件的特征标识之后,如果检测到目标选择器中还包含动画属性,此时将该动画属性的名称进行标记,并将目标选择器的特征标识配置给该动画属性,以确保该动画属性与目标选择器、所在的样式文件以及对应的业务文件,均具备同样的特征标识。
S205、获取与动画属性匹配的动画选择器,并将动画属性的特征标识配置给动画选择器。
目标选择器中的动画属性仅仅定义了该动画的展示样式,而其具体的动画效果控制,则需要依赖于其它选择器(即动画选择器);因此,根据上述标记完成的动画属性名称,在当前样式文件中继续进行遍历,在获取到与上述动画属性名称对应的动画选择器时,对该动画选择器同样配置上述特征标识;也即对于以动画效果展示的元素而言,在样式文件中同时对该元素对应的选择器、选择器中的动画属性以及与动画属性对应的动画选择器,同时配置了相同的特征标识;此时浏览器或者应用程序在展示页面时,仅会将该元素的动画效果展示在当前页面,以此针对动画展示元素实现了选择器维度的完整隔离,避免当前页面中的动画效果影响其它网页中同类元素的展示样式。
本发明实施例的技术方案,若确定目标选择器包含动画属性,将目标选择器的特征标识配置给动画属性;获取与动画属性匹配的动画选择器,并将动画属性的特征标识配置给动画选择器。以此针对动画展示元素实现了选择器维度的完整隔离,避免当前页面中的动画效果影响其它网页中同类元素的展示样式。
实施例三
图3A为本发明实施例三提供的一种文件处理方法的流程图,本实施例与上述实施例之间的关系在于,如果选择器具备多个子选择器,需要根据子选择器的标识信息确定选择器的标识信息。如图3A所示,该方法包括:
S301、根据预设隔离规则,为各个样式文件中的选择器配置局部标识或全局标识。
S302、获取各个业务文件的特征标识,并为业务文件中的文本对象模型以及与业务文件匹配的样式文件,分别配置对应业务文件的特征标识。
S303、遍历各个样式文件的选择器,若当前选择器包括多个子选择器,获取当前选择器中末端子选择器的标识信息,并将末端子选择器的标识信息作为当前选择器的标识信息;其中,标识信息包括局部标识或全局标识。
当选择器包括多个子选择器时,选择器的标识信息实际上是由各个子选择器的标识信息决定的;如上述技术方案,可以将末端子选择器的标识信息作为当前选择器的标识信息,以使选择器作为一个整体对外呈现隔离或非隔离状态;其中,如果某个子选择器未被标注标识信息,则将该子选择器视为标注了局部标识。
以样式文件为CSS文件为例,如果一个选择器A包括依次排列的三个子选择器,即A1、A2和A3;在配置标识信息时,如果A1配置有局部标识、A2配置有局部标识、A3配置有全局标识,虽然上述各个子选择器的标识信息不同,但此时将末端子选择器A3的标识信息作为选择器A的标识信息,以使选择器作为一个整体对外呈现统一的隔离或非隔离状态,确保了选择器的隔离与否具有唯一性。
再以Less文件为例,根据其文件编译特点,样式编译器会将上述选择器A编译为四种CSS类型的选择器,即“选择器A”;“选择器A&子选择器A1”;“选择器A&子选择器A1&子选择器A2”;“选择器A&子选择器A1&子选择器A2&子选择器A3”;上述判断过程即转化为对CSS文件的判断,即以末端选择器,即“选择器A&子选择器A1&子选择器A2&子选择器A3”,作为标识信息的获取依据,而“选择器A&子选择器A1&子选择器A2&子选择器A3”的标识信息显然是由末端子选择器,即子选择器A3决定,由此同样可以获取到选择器A的标识信息为全局标识。
此外,还可以根据各个子选择器的标识信息共同决定选择器的标识信息,例如,如果当前选择器中任一子选择器的标识信息为局部标识,则将当前选择器配置局部标识;如果当前选择器中全部子选择器的标识信息均为全局标识,则将当前选择器配置全局标识。
S304、若当前选择器的标识信息为局部标识,为末端子选择器配置匹配的属性选择器,并将当前选择器所在样式文件的特征标识,配置给属性选择器。
如上述技术方案,选择器的标识信息由末端子选择器的标识信息决定,那么将特征标识作为属性信息配置给选择器时,直接将该属性信息(也即特征标识)配置给末端子选择器即可;特别的,相比较于直接为末端子选择器配置属性信息,还可以通过属性选择器为末端子选择器配置属性信息,由于属性选择器是样式文件的固有组件,并不需要单独配置额外的属性代码段落,直接将属性选择器作为属性信息的记录载体即可,进一步降低了选择器属性信息的配置难度,简化了配置特征标识后的代码结构。
S305、为各个样式文件中具备局部标识的目标选择器,配置所在样式文件的特征标识,以通过配置完成的特征标识隔离目标选择器。
本发明实施例的技术方案,在当前选择器包括多个子选择器时,将末端子选择器的标识信息作为当前选择器的标识信息,既确保了隔离选择器与非隔离选择器配置时的自由嵌套,即隔离选择器可以包含非隔离子选择器,非隔离选择器也可以包含隔离子选择器,又确保了选择器以一个整体对外呈现统一的隔离或非隔离状态,确保了选择器的隔离与否具有唯一性。
具体应用场景一
图3B为本发明具体应用场景一提供的一种文件处理方法的流程图。如图3B所示,该方法包括:
S401、通过业务编译器编译业务文件;执行S402。
S402、获取当前业务文件的特征标识;执行S403
S403、为当前业务文件中的文本对象模型配置特征标识;执行S404。
S404、为与当前业务文件匹配的样式文件配置特征标识;执行S405。
S405、判断是否完成全部业务文件的编译;若否,执行S401;若是,执行S406。
S406、通过样式编译器编译样式文件;执行S407。
S407、获取当前样式文件配置的特征标识;执行S408。
S408、遍历当前样式文件的选择器;执行总线执行S409。
S409、判断当前选择器是否具备局部标识;若是,执行S410;若否,执行S408。
S410、对当前选择器添加属性选择器,并通过属性选择器记录特征标识;执行S411。
S411、判断当前样式文件是否遍历完成;若是,执行S412;若否,执行S408。
S412、判断是否完成全部样式文件的编译;若是,执行S413;若否,执行S406。
S413、结束。
本发明实施例的技术方案,在为样式文件中的选择器配置局部标识或全局标识之后,为业务文件中的文本对象模型以及与业务文件匹配的样式文件,分别配置对应业务文件的特征标识;进而为样式文件中具备局部标识的目标选择器,配置所在样式文件的特征标识,以通过配置完成的特征标识隔离目标选择器。相比于现有的选择器隔离方式,既避免了由于前缀选择器未添加或者重复命名导致的隔离不彻底现象发生,提升了选择器隔离效果,又避免了选择器与元素的手动绑定,提高了选择器隔离效率。
实施例四
图4是本发明实施例四所提供的一种文件处理装置的结构框图,该装置具体包括:
标识配置执行模块401,用于根据预设隔离规则,为各个样式文件中的选择器配置局部标识或全局标识;
特征标识获取模块402,用于获取各个业务文件的特征标识,并为业务文件中的文本对象模型以及与业务文件匹配的样式文件,分别配置对应业务文件的特征标识;
选择器配置模块403,用于为各个样式文件中具备局部标识的目标选择器,配置所在样式文件的特征标识,以通过配置完成的特征标识隔离所述目标选择器。
本发明实施例的技术方案,在为样式文件中的选择器配置局部标识或全局标识之后,为业务文件中的文本对象模型以及与业务文件匹配的样式文件,分别配置对应业务文件的特征标识;进而为样式文件中具备局部标识的目标选择器,配置所在样式文件的特征标识,以通过配置完成的特征标识隔离目标选择器。相比于现有的选择器隔离方式,既避免了由于前缀选择器未添加或者重复命名导致的隔离不彻底现象发生,提升了选择器隔离效果,又避免了选择器与元素的手动绑定,提高了选择器隔离效率。
可选的,特征标识获取模块402,具体用于根据业务文件的存储路径生成匹配的路径哈希值,并将所述路径哈希值作为所述业务文件的特征标识。
可选的,特征标识获取模块402,具体用于根据业务样式映射表,获取与当前业务文件匹配的目标样式文件,并将当前业务文件的特征标识配置给所述目标样式文件。
可选的,文件处理装置,具体用于若确定所述目标选择器包含动画属性,将所述目标选择器的特征标识配置给所述动画属性;获取与所述动画属性匹配的动画选择器,并将所述动画属性的特征标识配置给所述动画选择器。
可选的,选择器配置模块403,具体用于若当前选择器包括多个子选择器,获取当前选择器中末端子选择器的标识信息,并将末端子选择器的标识信息作为当前选择器的标识信息;其中,所述标识信息包括局部标识或全局标识。
可选的,选择器配置模块403,具体用于若当前选择器的标识信息为局部标识,为所述末端子选择器配置匹配的属性选择器,并将当前选择器所在样式文件的特征标识,配置给所述属性选择器。
可选的,标识配置执行模块401,具体用于根据所述样式文件的文件类型或者语言类型,构建匹配的局部标识和全局标识。
上述装置可执行本发明任意实施例所提供的文件处理方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明任意实施例提供的文件处理方法。
实施例五
图5示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、电子设备、刀片式电子设备、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
如图5所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(ROM)12、随机访问存储器(RAM)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(ROM)12中的计算机程序或者从存储单元18加载到随机访问存储器(RAM)13中的计算机程序,来执行各种适当的动作和处理。在RAM 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、ROM 12以及RAM 13通过总线14彼此相连。输入/输出(I/O)接口15也连接至总线14。
电子设备10中的多个部件连接至I/O接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如文件处理方法。
在一些实施例中,文件处理方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元。在一些实施例中,计算机程序的部分或者全部可以经由ROM和/或通信单元而被载入和/或安装到异构硬件加速器上。当计算机程序加载到RAM并由处理器执行时,可以执行上文描述的文件处理方法的一个或多个步骤。备选地,在其他实施例中,处理器可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行文件处理方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在异构硬件加速器上实施此处描述的系统和技术,该异构硬件加速器具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给异构硬件加速器。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (10)
1.一种文件处理方法,其特征在于,包括:
根据预设隔离规则,为各个样式文件中的选择器配置局部标识或全局标识;
获取各个业务文件的特征标识,并为业务文件中的文本对象模型以及与业务文件匹配的样式文件,分别配置对应业务文件的特征标识;
为各个样式文件中具备局部标识的目标选择器,配置所在样式文件的特征标识,以通过配置完成的特征标识隔离所述目标选择器。
2.根据权利要求1所述的方法,其特征在于,所述获取各个业务文件的特征标识,包括:
根据业务文件的存储路径生成匹配的路径哈希值,并将所述路径哈希值作为所述业务文件的特征标识。
3.根据权利要求1所述的方法,其特征在于,所述为业务文件中的文本对象模型以及与业务文件匹配的样式文件,分别配置对应业务文件的特征标识,包括:
根据业务样式映射表,获取与当前业务文件匹配的目标样式文件,并将当前业务文件的特征标识配置给所述目标样式文件。
4.根据权利要求1所述的方法,其特征在于,在为各个样式文件中具备局部标识的目标选择器,配置所在样式文件的特征标识之后,包括:
若确定所述目标选择器包含动画属性,将所述目标选择器的特征标识配置给所述动画属性;
获取与所述动画属性匹配的动画选择器,并将所述动画属性的特征标识配置给所述动画选择器。
5.根据权利要求1所述的方法,其特征在于,所述为各个样式文件中具备局部标识的目标选择器,配置所在样式文件的特征标识,包括:
若当前选择器包括多个子选择器,获取当前选择器中末端子选择器的标识信息,并将末端子选择器的标识信息作为当前选择器的标识信息;其中,所述标识信息包括局部标识或全局标识。
6.根据权利要求5所述的方法,其特征在于,在将末端子选择器的标识信息作为当前选择器的标识信息之后,还包括:
若当前选择器的标识信息为局部标识,为所述末端子选择器配置匹配的属性选择器,并将当前选择器所在样式文件的特征标识,配置给所述属性选择器。
7.根据权利要求1所述的方法,其特征在于,所述根据预设隔离规则,为各个样式文件中的选择器配置局部标识或全局标识,包括:
根据所述样式文件的文件类型或者语言类型,构建匹配的局部标识和全局标识。
8.一种文件处理装置,其特征在于,包括:
标识配置执行模块,用于根据预设隔离规则,为各个样式文件中的选择器配置局部标识或全局标识;
特征标识获取模块,用于获取各个业务文件的特征标识,并为业务文件中的文本对象模型以及与业务文件匹配的样式文件,分别配置对应业务文件的特征标识;
选择器配置模块,用于为各个样式文件中具备局部标识的目标选择器,配置所在样式文件的特征标识,以通过配置完成的特征标识隔离所述目标选择器。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的文件处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-7中任一项所述的文件处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311807315.2A CN117708063A (zh) | 2023-12-25 | 2023-12-25 | 一种文件处理方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311807315.2A CN117708063A (zh) | 2023-12-25 | 2023-12-25 | 一种文件处理方法、装置、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117708063A true CN117708063A (zh) | 2024-03-15 |
Family
ID=90149741
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311807315.2A Pending CN117708063A (zh) | 2023-12-25 | 2023-12-25 | 一种文件处理方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117708063A (zh) |
-
2023
- 2023-12-25 CN CN202311807315.2A patent/CN117708063A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10824691B2 (en) | Page rendering method, device, and data storage medium | |
CN109582909B (zh) | 网页自动生成方法、装置、电子设备和存储介质 | |
CN107943466B (zh) | 数据库访问语句生成方法、装置及设备 | |
CN110705226A (zh) | 电子表格的创建方法、装置及计算机设备 | |
CN117389538A (zh) | 页面组件内容开发方法、装置、设备以及存储介质 | |
CN117234582A (zh) | 一种项目代码处理方法、装置、电子设备及存储介质 | |
CN113642295B (zh) | 页面排版方法、装置及计算机程序产品 | |
CN115469849B (zh) | 一种业务处理系统、方法、电子设备和存储介质 | |
CN116185389A (zh) | 一种代码生成方法、装置、电子设备及介质 | |
CN117708063A (zh) | 一种文件处理方法、装置、电子设备和存储介质 | |
CN115454971A (zh) | 数据迁移方法、装置、电子设备及存储介质 | |
CN115577689A (zh) | 一种表格组件的生成方法、装置、设备及介质 | |
CN112540958B (zh) | 文件处理方法、装置、设备及计算机存储介质 | |
CN114489639A (zh) | 文件生成方法、装置、设备及存储介质 | |
CN114090002A (zh) | 前端界面构建方法、装置、电子设备和存储介质 | |
CN113138760A (zh) | 一种页面生成方法、装置、电子设备和介质 | |
CN118394835B (zh) | 一种电网数据的分析方法、装置、设备及存储介质 | |
CN118133794B (zh) | 一种表格配置方法、装置、设备及存储介质 | |
CN117573561B (zh) | 一种自动化测试系统、方法、电子设备和存储介质 | |
CN117131136B (zh) | 一种研发数据共享方法、系统、设备及存储介质 | |
EP4216097A1 (en) | Method, system, equipment and medium for modifying the layering layer information of finite element model unit | |
CN112989752B (zh) | 一种电源方案的仿真方法、仿真装置、终端设备及介质 | |
CN115525295A (zh) | 一种代码自动编辑方法、装置、电子设备及存储介质 | |
CN116225437A (zh) | 页面生成方法、装置、电子设备及存储介质 | |
CN115981657A (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 |