返回介绍

JavaScript 代码检查

发布于 2023-10-15 17:51:26 字数 2619 浏览 0 评论 0 收藏 0

EDP 内置 FECS,而 FECS 通过封装的 eslint 实现对 js 文件的检查。通过 jshint 命令:edp jshintedp lint --type=js,能够对 当前目录 下所有 js 文件的代码进行检查。

注意,目前 EDP 的代码检查并没有使用 csslint,只是为了兼容旧版才保留 csslint 命令。更多信息,移步 fecs.wiki

$ edp jshint

edp INFO main.js
edp WARN → line 149, col 12: Strings must use singlequote.
edp WARN → line 529, col 9: Empty block.
edp WARN → line 1057, col 61: Expected a 'break' statement before 'case'.

edp INFO tpl.js
edp WARN → line 20, col 43: Expected '===' and instead saw '=='.
edp WARN → line 24, col 68: Expected '===' and instead saw '=='.
edp WARN → line 14, col 59: 'config' is defined but never used.

自定义配置

EDP 默认使用 FECS 的配置,如果想使用自己的检测配置,可以在 当前目录 下建立 .fecsrc 文件。该文件是 JSON 格式,其中相关参数将与默认参数 mixin。具体参数的含义请参考ESLint Rules

下面是一个 .fecsrc 的简单例子:

{
"eslint": {
"rules": {
"fecs-valid-jsdoc": 0,
"max-nested-callbacks": [1, 5]
}
}
}

如果有的 js 文件比较特殊,可以在文件内容中,通过注释的形式,单独设置检查该文件时的一些特殊参数。

// 有的正则比较长,有的判断没必要,所以特别放开一些限制
/* eslint eqeqeq: 0, maxlen: 150 */


// 有的接口字段不符合 Camel 命名
/* eslint fecs-camelcase: [2, {ignore: ["/^api_/"]}] */

var json = {
api_field1: 1,
api_field2: 2
}

或者在某个代码段禁止该规则的检查:

/* eslint-disable fecs-camelcase */

var json = {
api_field1: 1,
api_field2: 2
}

/* eslint-enable fecs-camelcase */

排除检测文件

有时我们想要排除一些文件,不期望这些文件被检测:比如数据模拟、测试用例、工具代码。这时我们可以在 当前目录 下建立 .fecsignore 文件。

.fecsignore 中,每一行是一个 pattern。其逻辑与gitignore一致,详细说明请参看man 5 gitignore

**/tool/**
**/doc/**

提示:bower_componentsnode_module 目录已经被自动排除。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文