【技术实现步骤摘要】
冗余代码的处理方法、装置、电子设备及存储介质
[0001]本专利技术涉及前端数据处理
,特别是涉及一种冗余代码的处理方法、一种冗余代码的处理装置、一种电子设备以及一种计算机可读存储介质。
技术介绍
[0002]随着前端技术的日益强大,越来越多的生产力都聚焦到速成型的UI(User Interface,用户界面)框架上。对于速成型的UI框架,其通常都是指已封装好大量常规业务逻辑的与应用场景的前端设计框架,这些框架放到工程项目开发项目上可以辅助开发人员进行快速开发,利用框架提供的UI视觉与逻辑组装等能力完成需求业务的开发,以降低开发成本与开发时间。
[0003]其中,对于UI框架,均为基于视觉设计模式开发,从中会大量使用到视觉设计相关的代码,开发过程中开发人员会考虑到所有常规的视觉设计都可能出现的情况,从而导致最终输出阶段产生的CSS(Cascading Style Sheets,层叠样式表)代码的体积巨大。并且,对于一个具有一定用户量的前端工程项目而言,其往往存在一个很长的迭代周期,则每次开发提交的CSS代码都有可能在很紧急发版且未检查清楚的情况下提交上去,在这种情况下,部分代码上线后是否被使用并不清楚,也无法通过检测工具检测CSS代码是否被使用,随着时间的推移很容易造成线上CSS代码冗余。
技术实现思路
[0004]本专利技术实施例是提供一种冗余代码的处理方法、装置、电子设备以及计算机可读存储介质,以解决或部分解决无法对前端工程项目中存在无效且冗余的CSS代码进行处理的问题。
[ ...
【技术保护点】
【技术特征摘要】
1.一种冗余代码的处理方法,其特征在于,包括:获取目标文件,所述目标文件包括HTML类型文件与CSS类型文件;根据所述目标文件的文件内容,生成与所述目标文件对应的抽象语法树;根据各所述目标文件对应的抽象语法树,确定所述HTML类型文件对应的HTML样式类名集合和所述CSS类型文件对应的CSS样式类名集合;根据所述HTML样式类名集合与所述CSS样式类名集合进行样式类名筛选,获得样式类名删除集合;从所述CSS类型文件中删除所述样式类名删除集合对应的CSS代码。2.根据权利要求1所述的方法,其特征在于,所述抽象语法树包括与所述HTML类型文件对应的第一抽象语法树以及与所述CSS类型文件对应的第二抽象语法树,所述根据各所述目标文件对应的抽象语法树,确定所述HTML类型文件对应的HTML样式类名集合和所述CSS类型文件对应的CSS样式类名集合,包括:从所述第一抽象语法树中提取属性节点的节点值,并采用各个所述属性节点的节点值,构建所述HTML类型文件对应的HTML样式类名集合;从所述第二抽象语法树中提取规则节点的节点信息,并根据各个所述规则节点的节点信息,构建所述CSS类型文件对应的CSS样式类名集合。3.根据权利要求2所述的方法,其特征在于,所述从所述第二抽象语法树中提取规则节点的节点值,并采用各个所述规则节点的节点值,构建所述CSS类型文件对应的CSS样式类名集合,包括:遍历所述第二抽象语法树中各个规则节点,并获取所述规则节点中标签的标签名,将满足预设名称格式的标签名作为目标标签名;采用所述目标标签名,构建所述CSS类型文件对应的CSS样式类名集合。4.根据权利要求1所述的方法,其特征在于,所述根据所述HTML样式类名集合与所述CSS样式类名集合进行样式类名筛选,获得样式类名删除集合,包括:确定所述HTML样式类名集合与所述CSS样式类名集合之间的交集;将所述CSS样式类名集合与所述交集之间的差集作为第一样式类名删除集合。5.根据权利要求4所述的方法,其特征在于,所述根据所述HTML样式类名集合与所述CSS样式类名集合进行样式类名筛选,获得样式类名删除集合,还包括:将所述HTML样式类名集合与所述交集之间的差集作为样式类名保留集合。6.根据权利要求5所述的方法,其特征在于,所述根据所述HTML样式类名集合与所述CSS样式类名集合进行样式类名筛选,获得样式类名删除集合,还包括:获取所述交集和所述样式类名保留集合中的目标样式类名;从所述第一样式类名删除集合中提取与所述目标样式类名之间存在相同类名的第一样式类名,并获取针对所述第一样式类名的正则表达式;将满足所述正则表达式的第一样式类名作为需要保留的第二样式类名;将所述目标样式类名与所述第二样式类名之间的并集作为第二样式类名删除集合。7.根据...
【专利技术属性】
技术研发人员:杨泽伟,
申请(专利权)人:网易杭州网络有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。