このバージョンのeslint-webpack-pluginはwebpack 5でのみ動作します。webpack 4の場合は、2.xブランチを参照してください。
このプラグインは、eslint
を使用して、JavaScriptコードの問題を見つけて修正します。
開始するには、eslint-webpack-plugin
をインストールする必要があります
npm install eslint-webpack-plugin --save-dev
または
yarn add -D eslint-webpack-plugin
または
pnpm add -D eslint-webpack-plugin
注:
また、npmから
eslint >= 8
をインストールする必要もあります(まだインストールしていない場合)。
npm install eslint --save-dev
または
yarn add -D eslint
または
pnpm add -D eslint
次に、プラグインをwebpack構成に追加します。例:
const ESLintPlugin = require('eslint-webpack-plugin');
module.exports = {
// ...
plugins: [new ESLintPlugin(options)],
// ...
};
eslintオプションを渡すことができます。
注
指定したconfigオプションは、
ESLint
クラスに渡されます。これは、package.json
または.eslintrc
で指定するオプションとは異なるセットのオプションです。詳細については、eslintドキュメントを参照してください。
警告:
eslint-webpack-pluginバージョン1では、オプションは現在非推奨のCLIEngineに渡されていました。
cache
type cache = boolean;
true
実行時間を短縮するために、キャッシュはデフォルトで有効になっています。
cacheLocation
type cacheLocation = string;
node_modules/.cache/eslint-webpack-plugin/.eslintcache
キャッシュの場所へのパスを指定します。ファイルまたはディレクトリを指定できます。
configType
type configType = "flat" | "eslintrc";
eslintrc
ESLintで使用する構成のタイプを指定します。
eslintrc
は、ほとんどのESLintバージョンで利用可能な従来の構成形式です。flat
は、ESLint 8.21.0で導入された新しい形式です。新しい構成形式については、独自のドキュメントで説明されています。
この設定フォーマットは実験的なものとみなされているため、ESLint 8 のメインの ESLint モジュールにはエクスポートされていません。この設定フォーマットを機能させるには、
eslintPath
をeslint/use-at-your-own-risk
に設定する必要があります。
context
type context = string;
compiler.context
ファイルのルートを示す文字列。
eslintPath
type eslintPath = string;
eslint
Lint に使用される eslint
インスタンスへのパス。eslintPath
が公式の eslint のようなフォルダであるか、formatter
オプションを指定する場合は、eslint
をインストールする必要はありません。
extensions
type extensions = string | Array<string>;
'js'
チェックされる拡張子を指定します。
exclude
type exclude = string | Array<string>;
'node_modules'
除外するファイルまたはディレクトリを指定します。options.context
からの相対パスである必要があります。
resourceQueryExclude
type resourceQueryExclude = RegExp | Array<RegExp>;
[]
除外するリソースクエリを指定します。
files
type files = string | Array<string>;
null
ディレクトリ、ファイル、またはグロブを指定します。options.context
からの相対パスである必要があります。ディレクトリは options.extensions
に一致するファイルを再帰的に検索します。ファイルおよびグロブパターンは options.extensions
を無視します。
fix
type fix = boolean;
false
ESLint の自動修正機能を有効にします。
注意: このオプションはソースファイルを変更します。
formatter
type formatter = string| (
results: Array<import('eslint').ESLint.LintResult>,
data?: import('eslint').ESLint.LintResultData | undefined
) => string
'stylish'
引数として eslint メッセージ (オブジェクト) の配列を受け取る関数を受け入れます。関数は出力結果を文字列として返す必要があります。公式の eslint フォーマッタを使用できます。
lintDirtyModulesOnly
type lintDirtyModulesOnly = boolean;
false
変更されたファイルのみを Lint し、起動時の Lint をスキップします。
threads
type threads = boolean | number;
false
スレッドプールで Lint タスクを実行します。プールサイズは、数値を指定しない限り自動的に決定されます。
デフォルトでは、プラグインは eslint のエラー/警告の数に応じてエラーレポートを自動的に調整します。 emitError
または emitWarning
オプションを使用することで、この動作を強制できます。
emitError
type emitError = boolean;
true
発見されたエラーは常に発行されます。無効にするには false
に設定します。
emitWarning
type emitWarning = boolean;
true
発見された警告は常に発行されます。無効にするには false
に設定します。
failOnError
type failOnError = boolean;
true
エラーがある場合、モジュールのビルドを失敗させます。無効にするには false
に設定します。
failOnWarning
type failOnWarning = boolean;
false
警告がある場合、モジュールのビルドを失敗させます。true
に設定した場合。
quiet
type quiet = boolean;
false
true
に設定すると、エラーのみを処理してレポートし、警告を無視します。
outputReport
type outputReport =
| boolean
| {
filePath?: string | undefined;
formatter?:
| (
| string
| ((
results: Array<import('eslint').ESLint.LintResult>,
data?: import('eslint').ESLint.LintResultData | undefined,
) => string)
)
| undefined;
};
false
エラーの出力をファイルに書き込みます。たとえば、Jenkins CI でレポートに使用する checkstyle xml ファイルなどです。
filePath
は絶対パスまたは webpack 設定 output.path
からの相対パスです。出力ファイルに別の formatter
を渡すことができます。何も渡されない場合は、デフォルト/設定されたフォーマッタが使用されます。