このバージョンの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に渡されていました。
cachetype cache = boolean;true実行時間を短縮するために、キャッシュはデフォルトで有効になっています。
cacheLocationtype cacheLocation = string;node_modules/.cache/eslint-webpack-plugin/.eslintcacheキャッシュの場所へのパスを指定します。ファイルまたはディレクトリを指定できます。
configTypetype configType = "flat" | "eslintrc";eslintrcESLintで使用する構成のタイプを指定します。
eslintrcは、ほとんどのESLintバージョンで利用可能な従来の構成形式です。flatは、ESLint 8.21.0で導入された新しい形式です。新しい構成形式については、独自のドキュメントで説明されています。
この設定フォーマットは実験的なものとみなされているため、ESLint 8 のメインの ESLint モジュールにはエクスポートされていません。この設定フォーマットを機能させるには、
eslintPathをeslint/use-at-your-own-riskに設定する必要があります。
contexttype context = string;compiler.contextファイルのルートを示す文字列。
eslintPathtype eslintPath = string;eslintLint に使用される eslint インスタンスへのパス。eslintPath が公式の eslint のようなフォルダであるか、formatter オプションを指定する場合は、eslint をインストールする必要はありません。
extensionstype extensions = string | Array<string>;'js'チェックされる拡張子を指定します。
excludetype exclude = string | Array<string>;'node_modules'除外するファイルまたはディレクトリを指定します。options.context からの相対パスである必要があります。
resourceQueryExcludetype resourceQueryExclude = RegExp | Array<RegExp>;[]除外するリソースクエリを指定します。
filestype files = string | Array<string>;nullディレクトリ、ファイル、またはグロブを指定します。options.context からの相対パスである必要があります。ディレクトリは options.extensions に一致するファイルを再帰的に検索します。ファイルおよびグロブパターンは options.extensions を無視します。
fixtype fix = boolean;falseESLint の自動修正機能を有効にします。
注意: このオプションはソースファイルを変更します。
formattertype formatter = string| (
results: Array<import('eslint').ESLint.LintResult>,
data?: import('eslint').ESLint.LintResultData | undefined
) => string'stylish'引数として eslint メッセージ (オブジェクト) の配列を受け取る関数を受け入れます。関数は出力結果を文字列として返す必要があります。公式の eslint フォーマッタを使用できます。
lintDirtyModulesOnlytype lintDirtyModulesOnly = boolean;false変更されたファイルのみを Lint し、起動時の Lint をスキップします。
threadstype threads = boolean | number;falseスレッドプールで Lint タスクを実行します。プールサイズは、数値を指定しない限り自動的に決定されます。
デフォルトでは、プラグインは eslint のエラー/警告の数に応じてエラーレポートを自動的に調整します。 emitError または emitWarning オプションを使用することで、この動作を強制できます。
emitErrortype emitError = boolean;true発見されたエラーは常に発行されます。無効にするには false に設定します。
emitWarningtype emitWarning = boolean;true発見された警告は常に発行されます。無効にするには false に設定します。
failOnErrortype failOnError = boolean;trueエラーがある場合、モジュールのビルドを失敗させます。無効にするには false に設定します。
failOnWarningtype failOnWarning = boolean;false警告がある場合、モジュールのビルドを失敗させます。true に設定した場合。
quiettype quiet = boolean;falsetrue に設定すると、エラーのみを処理してレポートし、警告を無視します。
outputReporttype 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 を渡すことができます。何も渡されない場合は、デフォルト/設定されたフォーマッタが使用されます。