跳至主要内容

禁止不必要的限定符

禁止不必要的命名空间限定符。

🔧

此规则报告的一些问题可以通过 --fix ESLint 命令行选项 自动修复。

💭

此规则需要 类型信息 才能运行。

TypeScript 枚举和命名空间的成员通常作为限定属性查找来检索:例如 Enum.member。但是,当在它们的父枚举或命名空间中访问时,限定符是不必要的:例如,只需使用 member 而不是 Enum.member。此规则报告何时枚举或命名空间限定符是不必要的。

.eslintrc.cjs
module.exports = {
"rules": {
"@typescript-eslint/no-unnecessary-qualifier": "error"
}
};

在游乐场中尝试此规则 ↗

示例

enum A {
B,
C = A.B,
}
在游乐场中打开
namespace A {
export type B = number;
const x: A.B = 3;
}
在游乐场中打开

选项

此规则不可配置。

何时不使用它

如果您明确地希望使用完全限定的名称,例如为了明确起见,那么您不需要使用此规则。


类型检查的 lint 规则比传统的 lint 规则更强大,但也需要配置 类型检查的 lint。如果您在启用类型检查的规则后遇到性能下降,请参阅 性能故障排除

资源