FECS 基于 Node.js 的前端代码检查工具
FECS 是基于 Node.js 的前端代码风格工具套件,包含对 JavaScript、CSS 与 HTML 的检查及格式化。
特点
灵活:安装简单,深度可配置性
高效:基于 Stream,文件流转从未如此迅速
齐全:四大语言支持,前端代码质量有保障
基于四个工具
htmlcs:检查、格式化,HTML 代码
csshint:检查 CSS 代码
lesslint:检查 Less 代码
jformatter:修复 JS 代码
安装
$ [sudo] npm install fecs -g
使用
fecsfecs -v
fecs check --help
fecs format --help
快速开始
FECS 是基于 Node.js 的前端代码风格工具套件,包含对 JavaScript、CSS 与 HTML 的检查、修复及格式化。
安装
$ [sudo] npm install fecs -g
代码检查
$ fecs$ fecs path
$ fecs path/to/file
$ fecs check --help
代码修复
$ fecs format src --output=fixed$ fecs format src --replace
$ fecs format --help
FECS 命令参数
options
名称 | 别名 | 值类型 | 默认值 | 说明 |
---|---|---|---|---|
help | h | boolean | false | 显示帮助信息 |
version | v | boolean | false | 显示 FECS 的版本信息 |
check
$ fecs [check] [pattern...] [options]
- 使用 ESLint 检查
JavaScript
代码的质量与风格。 - 使用 CSSHint 检查
CSS
代码的质量与风格。 - 使用 HTMLCS 检查
HTML
代码的质量与风格。
pattern
指定 glob
风格的文件查找模式,默认为当前工作目录下的所有 js/css/html
,也可以直接指定到具体的文件路径。
options
名称 | 别名 | 值类型 | 默认值 | 说明 |
---|---|---|---|---|
color | c | boolean | true | 是否使用颜色高亮 |
debug | — | boolean | false | 是否允许直接抛出 FECS 的运行时错误 |
format | — | string | — | 指定 check 命令的结果输出格式,支持 JSON,XML 与 HTML,打开 silient 时也不影响输出 |
ignore | — | string | — | 指定需要忽略的文件模式,多个模式可以使用多个 --ignore 指定 |
lookup | — | boolean | false | 是否考虑所有上级目录的配置 |
maxerr | — | number | 0 | 每个文件的最大错误数,默认为 0 表示不限制 |
maxsize | — | number | 0 | 每个文件的最大字节数,默认为 900K, 0 表示不限制 |
reporter | — | string | — | 指定 reporter ,内置可选值只有 baidu ,当包含 / 字符时从当前工作目录查找自定义的 reporter 实现,其它值按默认处理 |
rule | — | boolean | false | 是否在错误信息最后显示对应的校验规则名称 |
silent | s | boolean | false | 是否隐藏所有通过 console.log 输出的信息 |
sort | — | boolean | false | 是否对信息按行列作升序排序 |
stream | — | boolean | false | 是否使用 process.stdin 作为输入 |
type | — | string | js,css,html | 指定要处理的文件类型,类型之间以 , 分隔 |
format
$ fecs format [pattern...] [options]
- 使用 fixmyjs 与 jformatter 修复与格式化
JavaScript
代码。 - 使用 CSSBeautify 与 CSScomb 修复与格式化
CSS
代码。 - 使用 HTMLCS 修复与格式化
HTML
代码。
options
名称 | 别名 | 值类型 | 默认值 | 说明 |
---|---|---|---|---|
debug | — | boolean | false | 是否允许直接抛出 FECS 的运行时错误 |
format | — | string | — | 指定 check 命令的结果输出格式,支持 JSON,XML 与 HTML,打开 silient 时也不影响输出 |
ignore | — | string | — | 指定需要忽略的文件模式,多个模式可以使用多个 --ignore 指定 |
lookup | — | boolean | false | 是否考虑所有上级目录的配置 |
output | o | string | ./output | 指定格式化后的输出目录 |
replace | — | boolean | false | 指定格式化后是否替换原文件 |
safe | s | string | medium | low -> medium -> high 三个级别对 JavaScript 作格式化,越往右对源码的改变越少 |
silent | s | boolean | false | 是否隐藏所有通过 console.log 输出的信息 |
stream | — | boolean | false | 是否使用 process.stdin 作为输入 |
type | — | string | js,css,html | 指定要处理的文件类型,类型之间以 , 分隔 |
API
fecs.leadName
设置或获取控制台输出信息前的名称,默认值为 fecs
。
var fecs = require('fecs');fecs.leadName = 'edp';
...
fecs.getOptions(Array argv)
获取经 minimist
解释后的命令行参数对象,可用于 fecs.check
和 fecs.format
方法。
var options = fecs.getOptions(process.argv.slice(2));console.log(options.command); // 'check'
...
fecs.check(Object options[, Function done])
检查文件或输入流的代码规范。
// 设置检查的文件路径options._ = ['/path/to/check'];
// 或者设置为 stream
// options.stream = yourReadableStream;
// 设置文件类型
// options.type = 'js,css';
/**
* callback after check finish
*
* @param {boolean} success true as all files ok, or false.
* @param {Object[]} errors data for check result.
*/
function done(success, errors) {
// blablabla
}
fecs.check(options, done);
fecs.format(Object options)
格式化、修复文件或输入流的代码。
fecs.format(options);
- 官网:http://fecs.baidu.com
- 中文文档:https://www.wenjiangs.com/docs/fecs
以上是 FECS 基于 Node.js 的前端代码检查工具 的全部内容, 来源链接: utcz.com/p/232832.html