[发明专利]后代选择器处理方法及装置在审
申请号: | 201811386727.2 | 申请日: | 2018-11-20 |
公开(公告)号: | CN109558138A | 公开(公告)日: | 2019-04-02 |
发明(设计)人: | 董永清;吴华;陈勇;沈妮 | 申请(专利权)人: | 北京小米移动软件有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/30 |
代理公司: | 北京尚伦律师事务所 11477 | 代理人: | 谢丽莎 |
地址: | 100085 北京市海淀区清河*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 选择器 后代选择 应用包 源代码 解析 运行时 压缩 编译 源代码生成 信息保存 样式规则 页面代码 用户体验 下载 应用 传输 保存 | ||
1.一种后代选择器处理方法,其特征在于,包括:
当编译应用的源代码生成应用包时,解析所述源代码中包括的层叠样式表CSS代码,生成抽象语法树AST对象;
解析所述AST对象的样式规则的CSS后代选择器,生成与所述CSS后代选择器对应的选择器对象;
对所述选择器对象的选择器信息进行压缩,将压缩后的选择器信息保存至所述应用包。
2.根据权利要求1所述的方法,其特征在于,所述将压缩后的选择器信息保存至所述应用包,包括:
将所述压缩后的选择器信息保存至所述应用包的样式对象中与所述压缩后的选择器信息对应的选择器对象的预设第一属性中。
3.根据权利要求1所述的方法,其特征在于,所述将压缩后的选择器信息保存至所述应用包,包括:
将所述压缩后的选择器信息保存至所述应用包的样式对象的预设第二属性中;所述预设第二属性用于保存所述样式对象中所有的选择器对象的压缩后的选择器信息。
4.根据权利要求1所述的方法,其特征在于,所述解析所述AST对象的样式规则的CSS后代选择器,生成与所述CSS后代选择器对应的选择器对象,包括:
遍历检测所述AST对象的样式规则的所有的选择器;
当检测到CSS后代选择器时,解析所述CSS后代选择器,生成与所述CSS后代选择器对应的选择器数组;所述选择器数组的元素包括用于存储选择器信息的选择器对象。
5.根据权利要求1所述的方法,其特征在于,所述对所述选择器对象的选择器信息进行压缩,包括:
对所述选择器对象的关键字和部分值进行压缩,得到所述压缩后的选择器信息。
6.一种后代选择器处理装置,其特征在于,包括:
解析模块,用于当编译应用的源代码生成应用包时,解析所述源代码中包括的层叠样式表CSS代码,生成抽象语法树AST对象;
生成模块,用于解析所述AST对象的样式规则的CSS后代选择器,生成与所述CSS后代选择器对应的选择器对象;
压缩模块,用于对所述选择器对象的选择器信息进行压缩;
保存模块,用于将压缩后的选择器信息保存至所述应用包。
7.根据权利要求6所述的装置,其特征在于,所述保存模块将所述压缩后的选择器信息保存至所述应用包的样式对象中与所述压缩后的选择器信息对应的选择器对象的预设第一属性中。
8.根据权利要求6所述的装置,其特征在于,所述保存模块将所述压缩后的选择器信息保存至所述应用包的样式对象的预设第二属性中;所述预设第二属性用于保存所述样式对象中所有的选择器对象的压缩后的选择器信息。
9.根据权利要求6所述的装置,其特征在于,所述生成模块,包括:
检测子模块,用于遍历检测所述AST对象的样式规则的所有的选择器;
生成子模块,用于当检测到CSS后代选择器时,解析所述CSS后代选择器,生成与所述CSS后代选择器对应的选择器数组;所述选择器数组的元素包括用于存储选择器信息的选择器对象。
10.根据权利要求6所述的装置,其特征在于,所述压缩模块对所述选择器对象的关键字和部分值进行压缩,得到所述压缩后的选择器信息。
11.一种后代选择器处理装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
当编译应用的源代码生成应用包时,解析所述源代码中包括的层叠样式表CSS代码,生成抽象语法树AST对象;
解析所述AST对象的样式规则的CSS后代选择器,生成与所述CSS后代选择器对应的选择器对象;
对所述选择器对象的选择器信息进行压缩,将压缩后的选择器信息保存至所述应用包。
12.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现权利要求1-5中任一项所述方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京小米移动软件有限公司,未经北京小米移动软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811386727.2/1.html,转载请声明来源钻瓜专利网。