FECS 基于 Node.js 的前端代码检查工具

FECS 基于 Node.js 的前端代码检查工具

FECS 是基于 Node.js 的前端代码风格工具套件,包含对 JavaScript、CSS 与 HTML 的检查及格式化。

特点

灵活:安装简单,深度可配置性

高效:基于 Stream,文件流转从未如此迅速

齐全:四大语言支持,前端代码质量有保障

基于四个工具

htmlcs:检查、格式化,HTML 代码

csshint:检查 CSS 代码

lesslint:检查 Less 代码

jformatter:修复 JS 代码

安装

$ [sudo] npm install fecs -g

使用

fecs

fecs -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

名称别名值类型默认值说明
helphbooleanfalse显示帮助信息
versionvbooleanfalse显示 FECS 的版本信息

check

$ fecs [check] [pattern...] [options]

  • 使用 ESLint 检查 JavaScript 代码的质量与风格。
  • 使用 CSSHint 检查 CSS 代码的质量与风格。
  • 使用 HTMLCS 检查 HTML 代码的质量与风格。

pattern

指定 glob 风格的文件查找模式,默认为当前工作目录下的所有 js/css/html,也可以直接指定到具体的文件路径。

options

名称别名值类型默认值说明
colorcbooleantrue是否使用颜色高亮
debugbooleanfalse是否允许直接抛出 FECS 的运行时错误
formatstring指定 check 命令的结果输出格式,支持 JSON,XML 与 HTML,打开 silient 时也不影响输出
ignorestring指定需要忽略的文件模式,多个模式可以使用多个 --ignore 指定
lookupbooleanfalse是否考虑所有上级目录的配置
maxerrnumber0每个文件的最大错误数,默认为 0 表示不限制
maxsizenumber0每个文件的最大字节数,默认为 900K, 0 表示不限制
reporterstring指定 reporter,内置可选值只有 baidu,当包含 / 字符时从当前工作目录查找自定义的 reporter 实现,其它值按默认处理
rulebooleanfalse是否在错误信息最后显示对应的校验规则名称
silentsbooleanfalse是否隐藏所有通过 console.log 输出的信息
sortbooleanfalse是否对信息按行列作升序排序
streambooleanfalse是否使用 process.stdin 作为输入
typestringjs,css,html指定要处理的文件类型,类型之间以 , 分隔

format

$ fecs format [pattern...] [options]

  • 使用 fixmyjs 与 jformatter 修复与格式化 JavaScript 代码。
  • 使用 CSSBeautify 与 CSScomb 修复与格式化 CSS 代码。
  • 使用 HTMLCS 修复与格式化 HTML 代码。

options

名称别名值类型默认值说明
debugbooleanfalse是否允许直接抛出 FECS 的运行时错误
formatstring指定 check 命令的结果输出格式,支持 JSON,XML 与 HTML,打开 silient 时也不影响输出
ignorestring指定需要忽略的文件模式,多个模式可以使用多个 --ignore 指定
lookupbooleanfalse是否考虑所有上级目录的配置
outputostring./output指定格式化后的输出目录
replacebooleanfalse指定格式化后是否替换原文件
safesstringmediumlow -> medium -> high 三个级别对 JavaScript 作格式化,越往右对源码的改变越少
silentsbooleanfalse是否隐藏所有通过 console.log 输出的信息
streambooleanfalse是否使用 process.stdin 作为输入
typestringjs,css,html指定要处理的文件类型,类型之间以 , 分隔

API

fecs.leadName

设置或获取控制台输出信息前的名称,默认值为 fecs

var fecs = require('fecs');

fecs.leadName = 'edp';

...

fecs.getOptions(Array argv)

获取经 minimist 解释后的命令行参数对象,可用于 fecs.checkfecs.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

回到顶部