禁止无效三斜杠引用
注意:此规则是
recommended
规则集的一部分。在
deno.json
中启用完整集合{ "lint": { "rules": { "tags": ["recommended"] } } }
使用 Deno CLI 启用完整集合
deno lint --rules-tags=recommended
此规则可以通过将其添加到
deno.json
中的 include
或 exclude
数组,从而明确地包含在当前标签的规则中或从中排除。{ "lint": { "rules": { "include": ["no-invalid-triple-slash-reference"], "exclude": ["no-invalid-triple-slash-reference"] } } }
警告三斜杠引用指令的错误用法。
Deno 支持 types
、path
、lib
和 no-default-lib
三斜杠引用指令。此 lint 规则检查是否存在无效或格式不正确的指令,因为这很可能是一个错误。
此外,请注意只有 types
指令才允许在 JavaScript 文件中使用。此指令用于告诉 TypeScript 编译器与特定 JavaScript 文件对应的类型定义文件的位置。然而,即使在 v1.10 之前的 Deno 手册版本(例如 v1.9.2)中,也曾有一个错误的说明,指出在这种情况下应使用 path
指令。实际上,应使用 types
指令。有关更多详细信息,请参阅 最新手册。因此,此规则还会检测 JavaScript 文件中除了 types
之外的其他指令的使用,并建议将其替换为 types
指令。
无效示例
JavaScript
/// <reference path="./mod.d.ts" />
/// <reference no-default-lib="true" />
/// <reference foo="bar" />
// ... the rest of the JavaScript ...
TypeScript
/// <reference foo="bar" />
// ... the rest of the TypeScript ...
有效示例
JavaScript
/// <reference types="./mod.d.ts" />
/// <reference lib="es2017.string" />
// ... the rest of the JavaScript ...
TypeScript
/// <reference types="./mod.d.ts" />
/// <reference path="./mod.d.ts" />
/// <reference lib="es2017.string" />
/// <reference no-default-lib="true" />
// ... the rest of the TypeScript ...