typescript/三斜杠引用 正确性
它的作用
禁止使用某些三斜杠指令,转而推荐使用 ES 模块导入声明。
为什么这是不好的?
相较于 ECMAScript 模块导入,通常不建议使用三斜杠引用类型指令。
示例
以下为该规则的 错误 用法示例:
ts
/// <reference lib="code" />
globalThis.value;配置
此规则接受一个配置对象,包含以下属性:
lib
type: "always" | "never"
default: "always"
对 /// <reference lib="..." /> 引用的强制要求。
"always"
允许使用三斜杠 lib 引用。
"never"
禁止使用三斜杠 lib 引用。
path
type: "always" | "never"
default: "never"
对 /// <reference path="..." /> 引用的强制要求。
"always"
允许使用三斜杠 path 引用。
"never"
禁止使用三斜杠 path 引用。
types
type: "always" | "never" | "prefer-import"
default: "prefer-import"
对 /// <reference types="..." /> 引用的强制要求。
"always"
允许使用三斜杠 types 引用。
"never"
禁止使用三斜杠 types 引用。
"prefer-import"
优先使用 ES 模块导入声明,而非三斜杠 types 引用。 此选项仅在存在相同模块的现有 import 声明时报告。
例如,当使用 prefer-import 时,以下代码会被视为 lint 违规:
ts
/// <reference types="foo" />
import { bar } from "foo";如何使用
要通过配置文件或 CLI 启用 此规则,可以使用:
json
{
"rules": {
"typescript/triple-slash-reference": "error"
}
}bash
oxlint --deny typescript/triple-slash-reference