メインコンテンツへスキップ

no-unused-vars

未使用の変数を許可しません。

拡張 "plugin:@typescript-eslint/recommended" ESLint設定 で有効にすると、このルールが有効になります。

このルールは、基本のeslint/no-unused-varsルールを拡張します。型などのTypeScript機能のサポートを追加します。

TypeScriptに対する利点

TypeScriptは、未使用のローカル変数またはパラメーターに対してそれぞれエラーを報告できるnoUnusedLocalsおよびnoUnusedParametersコンパイラーオプションを提供します。 ESLintとtypescript-eslintをセットアップしたくない場合は、これらのコンパイラーオプションを使用すると便利です。ただし

  • これらのlintルールは、TypeScriptのコンパイラーオプションよりも設定可能です。
    • たとえば、varsIgnorePatternオプションを使用すると、常に除外を許可する名前をカスタマイズできます。 TypeScriptは、_で始まる名前への除外をハードコードします。 _で始まる名前を除外するTypeScriptのスタイルをエミュレートする場合は、この構成を使用できます(エラーも含まれます)。
      {
      "rules": {
      "@typescript-eslint/no-unused-vars": [
      "error",
      {
      "args": "all",
      "argsIgnorePattern": "^_",
      "caughtErrors": "all",
      "caughtErrorsIgnorePattern": "^_",
      "destructuredArrayIgnorePattern": "^_",
      "varsIgnorePattern": "^_",
      "ignoreRestSiblings": true
      }
      ]
      }
      }
  • ESLintは、行、ファイル、フォルダー内で設定できます。 TypeScriptコンパイラーオプションは、TSConfigファイルにリンクされています。
  • 多くのプロジェクトでは、TypeScriptで報告されたエラーが、ESLintの警告よりも厳格にビルドをブロックするように構成されています。未使用の変数でビルドをブロックすると、不便な場合があります。

一般的に、TypeScriptの代わりに、未使用のローカル変数とパラメーターをフラグを立てるには、@typescript-eslint/no-unused-varsを使用することをお勧めします。

ヒント

VS Codeなどのエディターでは、プロジェクトでnoUnusedLocalsnoUnusedParametersが有効になっていなくても、未使用の変数が一般的に「グレー表示」されます。

ESLintが提供する同様のルールも参照してください

オプション

eslint/no-unused-varsのオプションを参照してください。

使用方法

.eslintrc.cjs
module.exports = {
"rules": {
// Note: you must disable the base rule as it can report incorrect errors
"no-unused-vars": "off",
"@typescript-eslint/no-unused-vars": "error"
}
};

Playgroundでこのルールを試す ↗

リソース

ESLintコアから❤️を込めて。