0.1.5 • Published 4 years ago

@zebrateam/auto-complate-color-variable v0.1.5

Weekly downloads
-
License
MIT
Repository
github
Last release
4 years ago

概述

PostCSS plugin color variable. 替换颜色值为预定义的变量。目前支持 Less 和 Sass,支持批量替换多个文件及缺失定义变量检测并自动创建。

安装依赖

全局安装插件:

npm install @zebrateam/auto-complate-color-variable -g

支持特性

定义颜色变量名的文件

@link-color: #0a1;

输入

.foo {
    color: #0a1;
    background: rgb(170, 170, 170);
    border: 1px solid rgba(170, 170, 170, 0.1);
}

输出

.foo {
  color: @link-color;
  background: @link-color;
  border: 1px solid fade(@link-color, 10%);
}

配置变量

.colorvarrc.json支持配置项详解:

参数描述类型默认值
variableFiles定义颜色变量的文件路径Array[]
syntax语法,支持 less 和 scssString'less'
autoImport是否自动导入依赖的variableFilesBooleanfalse
alias等同于 webpack 中的aliasObject{}
base基础路径,modules匹配时扫描进入目录String''
autoComple是否自动补全缺失color变量,checkMode为‘1’时有效Booleanfalse
usingAlias自动导入 variableFile 时,使用 alias ,例如 @import '~@/src/color.less'String''
singleQuote自动导入时是否使用单引号, 默认 falseBooleanfalse
checkMode是否为检测模式,为‘1’时,只检测缺失定义color变量Boolean'0'
cssTplPath转换color为变量,提取支持多主题模版的路径(可以根目录相对路径文件)String'./template/less.tpl'
supportCssTpl是否选择css模版来转换样式Booleanfalse
prettyCss是否美化代码Booleantrue

命令行参数

参数描述类型别名是否必须例子
syntax语法: 支持 less 和 scss , 默认lessString's'falsepcvar ./index.less --syntax less
base定义基础路径,用来批量转换多个文件String'b'falsepcvar --base src
modules定义匹配文件规则String'm'falsepcvar --modules "*/.less"
checkMode检测是否缺失color未定义变量(1: 检测;0: 不检测,检测模式时,不自动写入转换less文件)String'c'falsepcvar --modules "*/.less" --checkMode=1

项目应用

项目根目录创建文件.colorvarrc.json

{
  "variableFiles": ["./config/theme.less"],
  "syntax": "less",
  "autoImport": true,
  "alias": {
    "@": "./config" 
  },
  "base": "src/pages",
  "autoComple": true,
  "usingAlias": "@", 
  "singleQuote": false,
  "supportCssTpl": true
}

命令行

# 检测模式,如果autoComple为true,则变量定义文件自动创建缺失变量
.pcvar --m "**/*.less" --c=1

# 批量转换多文件
.pcvar --m "**/*.less"