CSSHint
CSSHint 是一个基于 NodeJS 的代码规范审查工具,目前的规则是基于 ecomfe 的 CSS 编码规范,同时也覆盖了 CSSLint 的规则。
经过了一段时间的重构,终于来到这个版本。在这个版本中,css
解析器切换成 postcss。此外,这个版本里,改变了实现方式,性能较以前的版本有比较大的提升。同时,在全局global
对象上挂载了如下三个属性:
global.CSSHINT_INVALID_ALL_COUNT
: 用于记录全局的warn
个数,为max-error
规则服务。global.CSSHINT_HEXCOLOR_CASE_FLAG
: 记录项目级别的颜色值的大小写信息,0: 小写, 1: 大写,为unifying-color-case-sensitive
规则服务。global.CSSHINT_FONTFAMILY_CASE_FLAG
: 记录项目级别的font-family
大小写信息,为unifying-font-family-case-sensitive
规则服务。
配置参考
Install & Update
CSSHint 已发布到 npm 上,可通过如下命令安装。
$ [sudo] npm install csshint [-g]
升级 CSSHint 请用如下命令。
$ [sudo] npm update csshint [-g]
Usage
-
in CLI
$ csshint -v // 显示版本信息
$ csshint [filePath|dirPath] // 对 file 或 dir 执行 csshint
-
in Node.js
/**
* 检测 css 文件内容
*
* @param {string} fileContent 文件内容
* @param {Object=} config 检测规则的配置,可选
*
* @return {Promise} Promise 对象,
* Promise 对象的 reject 和 resolve 的回调函数的参数格式如下,
* {
* path: {string} 文件路径
* messages: {Array.<Object>} 错误信息集合,[{ruleName, line, col, errorChar, message, colorMessage}]
* }
*/
exports.checkString(fileContent, config);
/**
* 校验文件
*
* @param {Object} file 包含 path, content 键的对象
* @param {Array} errors 本分类的错误信息数组
* @param {Function} done 校验完成的通知回调
*/
check(file, errors, done);
TODO