tool
ESLint
JavaScript / TypeScript のための設定可能な静的解析ツール。プラグインで React / Next.js / import 順序などのルールを拡張でき、Prettier やエディタと組み合わせて保存時に自動修正することが多い。
問題一覧(9)
ESLint の eslint-disable-next-line で警告を抑止できない
コメントでルールを抑止できないのは、ルール名のタイポ、TypeScript-ESLint のプレフィックス漏れ、JSX 内のコメント形式違反、対象行のずれ、--report-unused-disable-directives で逆に警告が出ている、のいずれかが原因。エラー出力に表示されるルール名と完全一致させる。
更新: 2026-08-03、実行例あり、タグ: disable、comment、suppression
ESLint の --fix で自動修正が適用されない
eslint --fix で直らないのは、そのルールが自動修正に非対応、対象ファイルが ignore されている、--fix-dry-run で書き込んでいない、などが主因。fixable でない指摘は手動修正が必要。
更新: 2026-07-20、タグ: fix、cli、flat-config
ESLint Flat Config (eslint.config.js) が読み込まれない
ESLint v9 から flat config が既定。.eslintrc.* が残っていると衝突する。eslint.config.js の配置・export 形式・プラグイン側 flat 対応の有無を順に確認する。
更新: 2026-08-02、実行例あり、タグ: flat-config、config、migration
ESLint で ignore 指定したファイルが無視されない
ESLint v9 (flat config) では .eslintignore は廃止され、eslint.config.js 内の ignores プロパティでのみ無視指定する。グローバル ignore にしたい場合は files を併記せず ignores 単独のオブジェクトで宣言し、否定パターン(!)は後段に置く。
更新: 2026-08-17、実行例あり、タグ: ignore、config、flat-config
ESLint の no-unused-vars が無視できない
no-unused-vars は変数・引数・型・ファイル単位で抑制方法が違う。アンダースコア prefix / disable-next-line / overrides を使い分け、意図した未使用だけ通す設定にする。
更新: 2026-08-02、実行例あり、タグ: no-unused-vars、suppression、disable
ESLint で eslint-plugin が読み込めないエラーが解消できない
Cannot find module 'eslint-plugin-xxx' の原因は、依存インストール漏れ・パッケージ名の綴り違い・flat config と従来形式の混在のいずれか。flat config では import してオブジェクトとして渡す。
更新: 2026-08-15、実行例あり、タグ: plugin、flat-config、install
ESLint と Prettier の競合でフォーマットできない
ESLint と Prettier の整形ルールが衝突すると、保存→フォーマット→ESLint→再差分のループになる。eslint-config-prettier で重複ルールを切り、整形は Prettier に一本化するのが定石。
更新: 2026-08-02、実行例あり、タグ: prettier、format、config
ESLint で「TSConfig does not include this file」が解決できない
型情報を使うルールで Parsing error: ... however that TSConfig does not include this file が出るのは、対象ファイルが tsconfig の include 範囲外のため。projectService に切り替えるか、対象を含む tsconfig を指定する。
更新: 2026-08-02、実行例あり、タグ: typescript-eslint、parsing-error、tsconfig
ESLint Flat Config で @typescript-eslint/parser が読み込めない
ESLint v9 の Flat Config では parser の指定方法が変わり、typescript-eslint パッケージから parser オブジェクトを受け取って languageOptions.parser に渡す必要がある。文字列指定は使えない。
更新: 2026-08-02、実行例あり、タグ: typescript、parser、flat-config