本文へスキップ

no-unnecessary-qualifier

不要な名前空間修飾子を禁止します。

🔧

このルールによって報告される問題の一部は、 --fix ESLintコマンドラインオプションによって自動的に修正できます。.

💭

このルールには 型情報 が必要です。

TypeScriptの列挙型と名前空間のメンバーは、一般的に修飾されたプロパティ検索(例:`Enum.member`)として取得されます。しかし、親の列挙型または名前空間内でアクセスされる場合、修飾子は不要です(例:`Enum.member`ではなく`member`)。このルールは、列挙型または名前空間の修飾子が不要な場合に報告します。

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

Playgroundでこのルールを試してみてください ↗

enum A {
B,
C = A.B,
}
Playgroundで開く
namespace A {
export type B = number;
const x: A.B = 3;
}
Playgroundで開く

オプション

このルールは設定できません。

使用しない場合

明示性のために、完全修飾名を使用することを明示的に好む場合は、このルールを使用する必要はありません。


型チェックされたlintルールは従来のlintルールよりも強力ですが、型チェックされたlintの設定も必要です。型チェックされたルールを有効にした後にパフォーマンスの低下が発生する場合は、パフォーマンスに関するトラブルシューティングを参照してください。

リソース