一、颜色常量替换代码库原理
1、用到的插件
- @babel/register: 在node环境中,将ES6的代码实时编译为es5的代码,在运行时,试试编译转化代码,无需手动编译
- moment
Moment插件是一个JavaScript日期和时间处理库,它使得在JavaScript中处理日期和时间变得简单和方便。
它提供了许多功能,包括解析、验证、操作、格式化和显示日期和时间。Moment插件可以用于处理各种日期和时间操作
例如计算两个日期之间的差异、添加或减去指定的时间间隔、格式化日期和时间为特定的字符串格式等。它还支持各种不同的日期和时间格式,包括ISO 8601、Unix时间戳、日期对象等
Moment插件在开发Web应用程序或处理日期和时间的任何项目中非常有用。
2、用到的方法
- fs.statSync: 同步地获取文件或目录的详细信息,包括文件大小、创建时间、修改时间等。该方法会阻塞执行,直到获取到文件或目录的信息为止
- isFile:是否是个文件
- isDirectory:是否是个目录
- fs.readdirSync 读取制定目录下的文件和子目录,并返回一个包含文件和子目录名称的数组
2、配置项设计
- filePath: 目标代码库
- fileTypes: 都要处理哪些类型的文件
- exludes: 不处理的文件夹
- logFile: 日志文件地址
- colorsLogFile: 未替换的非标准颜色记录
- varsFile: 颜色变量模版文件
3、非标准颜色的处理
将文件所有的颜色都筛选出来,与定义的标准颜色进行对比,如果符合标准颜色,使用颜色变量进行替换
非标准的颜色在日志中进行输出,方便FE进行比对查看
二、style原理
原理
利用类名覆盖样式
使用
- 引用css文件
- 修改需要统一的类名即可