web-dev-qa-db-ja.com

ESLintはVSコードで動作しませんか?

VS CodeでESLintが機能していません。プラグインはVS Codeにインストールされており、ESLint自体はpackage.jsonの開発者依存関係としてインストールされています。

VS Code User Settingsで次のオプションを変更しました。

{
  "eslint.options": { "configFile": "C:/mypath" }
}

コマンドeslint --initを使用して、基本.eslintrc.jsonをパッケージのメインディレクトリに追加しました。

他の人々は、まったく同じESLint設定ファイルでまったく同じパッケージを使用して、VS CodeからESLintフィードバックを得ることができました。

デフォルトで.eslintrc.jsonファイル内にある推奨ルールセットにすべて含まれている複数のルールを直接破った場合、いかなる種類のフィードバックも受け取りませんでした。

私は何が欠けていますか?

編集:コマンドラインでESLintを使用してテストしましたが、すべてが期待どおりに機能し、エラーがあるはずの場所で見つかりましたが、これらの同じエラーはVSコードに表示されませんでした。問題は、ESLintではなくVS Code側にあるようです。

35
John Landon

ESLintからフィードバックが得られない理由はいくつかあります。 ESLintは最初にプロジェクトで構成ファイルを探し、.eslintrc.jsonが見つからない場合はグローバル構成を探します。個人的には、ESLintを各プロジェクトにのみインストールし、各プロジェクトに基づいて構成を作成します。

フィードバックが得られない2番目の理由は、フィードバックを得るには、.eslintrc.jsonでリンティングルールを定義する必要があることです。そこにルールがない場合、またはプラグインがインストールされていない場合は、それらを定義する必要があります。

9
EJ Mason

ESLintが端末で実行されているがVSCode内ではない場合、拡張機能はローカルおよびグローバルノードモジュールフォルダーの両方からESLintライブラリを検出できない可能性があります。

確認するには、プロジェクトでJSファイルを開いた後、VSCodeでCtrl + Shift + Uを押して[出力]パネルに移動します。 「ドキュメント{{documentName}}。jsのESLintライブラリのロードに失敗しました」と表示されている場合、パスを検出しようとして問題が発生しています。

はいの場合、設定で「eslint.nodePath」を構成して手動で設定します。完全なパスを指定します。現在、環境変数の使用はサポートされていません。このオプションは ESLint拡張ページ で文書化されています。

31
Shubham Shah

私の場合、ReactでTypeScriptを使用していたため、修正はESLintにこれらのファイルも検証するように指示することでした。これはユーザー設定で行う必要があります:

"eslint.validate": [ "javascript", "javascriptreact", "html", "typescriptreact" ],
17
Simone

私の場合、VSCodeにESLint拡張をインストールしていなかったため、問題が発生していました。それをやったとそれは再び機能し始めました。

4
atulkhatri

ESLintのグローバルインストールを使用している場合、構成で使用されるプラグインもグローバルにインストールする必要があります。ローカルインストールでは賢明です。 uがローカルにインストールされ、ローカルに適切に設定されているにもかかわらず、eslintが機能しない場合は、IDEを再起動してください。これはVScodeで私に起こりました。

3

私はWindowsでも同様の問題を抱えていましたが、時々eslintは(vscodeで)機能しませんでした。後で私はそれがしばらくして正常に動作することに気付きました。この問題に関連していた: eslintサーバーが利用可能になるまで〜3-5分かかります

環境変数NO_UPDATE_NOTIFIER=1を設定すると問題が解決しました

3
cimak

私はeslintで「..まだファイルを検証していない」という同様の問題を抱えていましたが、VS Codeの問題コンソールには何も報告されませんでした。ただし、VS Codeを最新バージョン(1.32.1)にアップグレードして再起動すると、eslintは機能し始めました。

2
PRS

私の場合、ワークスペースでESLintが無効になっています。 vscode拡張機能の設定で有効にする必要がありました。

1
Melchia

。eslintrcおよび。eslintignoreを使用して、ローカルプロジェクトルートで既にルールを定義していると仮定して、応答を行います。 VSCode Eslint Extensionをインストールした後、vscodeのsettings.jsonで行う必要のあるいくつかの構成

eslint.enable: true
eslint.nodePath: <directory where your extensions available>

プロジェクトの依存関係としてeslint localをインストールすることは、これが機能するための最後の要素です。ローカルにインストールされたパッケージと競合する可能性のあるグローバルとしてeslintをインストールしないことを検討してください。

1
LasithaMD

私の場合、package.jsonと拡張機能が構成されていても、monorepoのフォルダーを1つだけプロジェクトに追加したため、機能しませんでした。 VS Codeにプロジェクト全体(package.jsonファイルを含む)を追加したときにのみ作業しました。

1
shivangg

私の場合、eslint validateを「eslint.validate」に設定すると:["javascript"、 "javascriptreact"、 "html"、 "typescriptreact"]が仕事をしました。

0
Tomasz Ostroga

VSCodeの再起動はうまくいきました。

0
thedanotto