no-invalid-triple-slash-reference
NOTE: this rule is part of the
recommended
rule set.Enable full set in
deno.json
:{ "lint": { "rules": { "tags": ["recommended"] } } }
Enable full set using the Deno CLI:
deno lint --rules-tags=recommended
This rule can be explictly included to or excluded from the rules present in the current tag by adding it to the
include
or exclude
array in deno.json
:{ "lint": { "rules": { "include": ["no-invalid-triple-slash-reference"], "exclude": ["no-invalid-triple-slash-reference"] } } }
警告三斜杠引用指令的错误用法。
Deno 支持 types
、path
、lib
和 no-default-lib
的三斜杠引用指令。此 lint 规则检查是否存在无效或格式不正确的指令,因为这很可能是一个错误。
此外,请注意,仅允许在 JavaScript 文件中使用 types
指令。该指令用于告诉 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" />
// ... 剩余的 JavaScript ...
TypeScript
/// <reference foo="bar" />
// ... 剩余的 TypeScript ...
有效:
JavaScript
/// <reference types="./mod.d.ts" />
/// <reference lib="es2017.string" />
// ... 剩余的 JavaScript ...
TypeScript
/// <reference types="./mod.d.ts" />
/// <reference path="./mod.d.ts" />
/// <reference lib="es2017.string" />
/// <reference no-default-lib="true" />
// ... 剩余的 TypeScript ...