代码检查工具
Deno 集成了 JavaScript 和 TypeScript 的内置代码检查工具。
检查当前目录和子目录中的所有 JS/TS 文件
deno lint
# 检查特定文件
deno lint myfile1.ts myfile2.ts
# 检查指定目录和子目录中的所有 JS/TS 文件
deno lint src/
# 以 JSON 格式输出结果
deno lint --json
# 从标准输入读取
cat file.ts | deno lint -
有关更多详细信息,请运行 deno lint --help
。
可用规则
要查看受支持规则的完整列表,请访问 deno_lint 规则文档。
忽略指令
文件
要忽略整个文件,应在文件顶部放置 // deno-lint-ignore-file
指令:
// deno-lint-ignore-file
function foo(): any {
// ...
}
忽略指令必须放在第一个语句或声明之前:
// 版权所有 2020 年的 Deno 作者。保留所有权利。MIT 许可证。
/**
* 一些 JS 文档
*/
// deno-lint-ignore-file
import { bar } from "./bar.js";
function foo(): any {
// ...
}
您还可以在整个文件中忽略某些诊断信息
// deno-lint-ignore-file no-explicit-any no-empty
function foo(): any {
// ...
}
诊断信息
要忽略特定诊断信息,应在有问题的行之前放置 // deno-lint-ignore <codes...>
指令。必须指定要忽略的规则名称:
// deno-lint-ignore no-explicit-any
function foo(): any {
// ...
}
// deno-lint-ignore no-explicit-any explicit-function-return-type
function bar(a: any) {
// ...
}
配置
从 Deno v1.14 开始,代码检查工具可以使用 配置文件 或以下 CLI 标志进行自定义:
--rules-tags
- 将运行的标记名称列表。空列表会禁用所有标记,并仅使用include
中的规则。默认为 "recommended"。--rules-exclude
- 从配置的标记集中排除的规则名称列表。即使相同的规则位于include
中,也会被排除在外;换句话说,--rules-exclude
优先级高于--rules-include
。--rules-include
- 将运行的规则名称列表。如果相同的规则位于exclude
中,它将被排除。