ESLint funktioniert nicht in VS Code?

Lesezeit: 4 Minuten

Benutzer-Avatar
John Landon

ESLint funktioniert bei mir in VS Code nicht. Ich habe das Plugin in VS Code installiert und ESLint selbst als Entwicklerabhängigkeit in meiner package.json, die ich ebenfalls installiert habe.

Ich habe die folgende Option in den VS Code-Benutzereinstellungen geändert:

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

Ich habe den Befehl verwendet eslint --init um das Grundlegende hinzuzufügen .eslintrc.json in das Hauptverzeichnis meines Pakets.

Andere Leute konnten ESLint-Feedback von VS Code erhalten, indem sie genau dasselbe Paket mit genau derselben ESLint-Konfigurationsdatei verwendeten.

Ich habe keinerlei Feedback erhalten, wenn ich direkt gegen mehrere Regeln verstoßen habe, die alle im empfohlenen Regelsatz enthalten waren, der sich standardmäßig in der befindet .eslintrc.json Datei.

Was vermisse ich?

Bearbeiten: Ich habe die Verwendung von ESLint über die Befehlszeile getestet, und alles hat wie erwartet funktioniert, wobei die Fehler dort gefunden wurden, wo sie hätten sein sollen, aber dieselben Fehler sind in VS Code nie aufgetaucht. Das Problem scheint auf der Seite von VS Code und nicht auf ESLint zu liegen.

  • Beachten Sie, dass, wenn Sie installiert haben ESLint erfolgreich war, aber kein erwartetes Feedback von ESLint erhalten haben, besteht die Möglichkeit, dass Sie es vergessen haben ESLint initialisieren. Führen Sie dazu diesen Befehl im Stammverzeichnis Ihres Projekts aus ./node_modules/.bin/eslint --init

    Benutzer12200634

    25. März 2020 um 10:58 Uhr


In meinem Fall bestand die Lösung, da ich TypeScript mit React verwendet habe, einfach darin, ESLint anzuweisen, diese Dateien ebenfalls zu validieren. Dies muss in Ihre Benutzereinstellungen gehen:

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

  • Hat für mich funktioniert. (Unter Windows)

    – Elli

    25. September 2019 um 13:45 Uhr

  • TypeScript mit React hier hat auch für mich funktioniert. Vielen Dank

    – ggat

    15. Dezember 2019 um 12:52 Uhr


  • TypeScript mit React unter Windows und das hat auch bei mir funktioniert.

    – Peter Boomsma

    3. August 2020 um 11:51 Uhr

  • Was meinst du mit “Benutzereinstellungen”? Ist das .eslintrc.json oder etwas anderes?

    – Clonkex

    15. Mai um 8:23 Uhr

  • Dies ist dein settings.json Datei. Sie können diese Datei über die Befehlspalette öffnen, unter macOS ist es Cmd + Shift + P um es zu öffnen, dann suchen Sie nach Preferences: Open Settings (JSON)

    – Simone

    15. Mai um 17:49 Uhr


  • HINWEIS: Unter Windows 10 wurden .vscode/settings.json im Stammverzeichnis unseres Projekts nicht wirksam, aber sie WAREN für unsere Ubuntu WSL-Umgebungen. Unter Windows 10 befand sich die Standardeinstellung settings.json in unserem %appdata%-Ordner, und als wir sie so änderten, dass sie die Zeilen „editor.codeActionsOnSave …“ enthielt, begann sie zu funktionieren. Der einfachste Weg, um zur richtigen settings.json zu gelangen, besteht darin, zu den ESLint-Plugin-Einstellungen zu gehen und nach unten zu scrollen, um einen Link dazu zu finden. Nur unter Windows 10 wurde also die settings.json in unserem .vscode-Ordner im Stammverzeichnis unseres Projekts ignoriert.

    – Alfreema

    12. August 2021 um 20:36 Uhr

Benutzer-Avatar
Esra Siton

Fall 1/2: Erstmalige Plugin-Installation? Genehmigung erforderlich

Etwas “merkwürdige” Benutzererfahrung (kaum zu bemerken) – jedenfalls – seit V 2.1.10 –
Sie müssen die Statusleiste “Aktuell sperren” ändern Geben Sie hier die Bildbeschreibung ein bei Neu-/Erstinstallation.

Version des ESLint-Plugins 2.1.10 Änderungsprotokoll (10.08.2020)

Es wird kein modales Dialogfeld angezeigt, wenn die ESLint-Erweiterung zum ersten Mal versucht, eine ESLint-Bibliothek zu laden, und eine Genehmigung ist erforderlich. Stattdessen ändert sich das ESLint-Statusleistenelement in das ESLint-Statussymbol, das anzeigt, dass die Ausführung derzeit blockiert ist.

Klick auf das status-bar (rechte untere Ecke):
Geben Sie hier die Bildbeschreibung ein

Öffnet dieses Popup:

Geben Sie hier die Bildbeschreibung ein

Genehmigen ==> Allows Everywhere

Geben Sie hier die Bildbeschreibung ein

-oder- durch Befehle:

Strg + Wechsel +p– ESLint: Manage Library Execution

Geben Sie hier die Bildbeschreibung ein

Lesen Sie hier mehr unter “Release Notes”:

https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint


Fall 2/2: Das Plugin ist bereits installiert/genehmigt

Öffnen Sie das Terminal Strg+`

Unter Ausgang ESLint Dropdown, finden Sie nützlich Debugging-Daten (Fehler, Warnungen, Infos).

Geben Sie hier die Bildbeschreibung ein

Fehlt zum Beispiel .eslintrc-.json diesen Fehler werfen:
Geben Sie hier die Bildbeschreibung ein

Error: ENOENT: no such file or directory, realpath

Überprüfen Sie als Nächstes, ob das Plugin aktiviert ist:
Geben Sie hier die Bildbeschreibung ein

Standardmäßig muss eslint.probe nicht bearbeitet werden

Zuletzt, seit v 2.0.4 – eslint.validate im “Normalfall” (react, vue, typescript, js, html, md) nicht mehr nötig (alte Legacy-Einstellung)**

** Viele veraltete Stackoverflow-Antworten (sogar sie) weisen darauf hin eslint.probe Datei bearbeitet werden soll.

eslint.probe = ein Array für Sprachbezeichner, für die die ESLint-Erweiterung aktiviert werden soll und versuchen soll, die Datei zu validieren. Wenn die Validierung für geprüfte Sprachen fehlschlägt, sagt die Erweiterung still. Standardwerte zu [javascript, javascriptreact, typescript,
typescriptreact, html, vue, markdown].

  • Ich denke, dieser muss gepinnt werden – diese Allow-Aktion war so nicht offensichtlich. Das hat alles für mich behoben.

    – Chaos-Crafter

    7. April 2021 um 1:47 Uhr

Benutzer-Avatar
EJ Mason

Es gibt einige Gründe, warum ESLint Ihnen möglicherweise kein Feedback gibt. ESLint wird zuerst in Ihrem Projekt nach Ihrer Konfigurationsdatei suchen und wenn es dort keine .eslintrc.json finden kann, wird es nach einer globalen Konfiguration suchen. Persönlich installiere ich ESLint nur in jedem Projekt und erstelle eine Konfiguration basierend auf jedem Projekt.

Der zweite Grund, warum Sie kein Feedback erhalten, ist, dass Sie Ihre Linting-Regeln in der Datei .eslintrc.json definieren müssen, um das Feedback zu erhalten. Wenn es dort keine Regeln gibt oder Sie keine Plugins installiert haben, müssen Sie diese definieren.

  • Ich denke, dieser muss gepinnt werden – diese Allow-Aktion war so nicht offensichtlich. Das hat alles für mich behoben.

    – Chaos-Crafter

    7. April 2021 um 1:47 Uhr

Benutzer-Avatar
atulkhatri

In meinem Fall hatte ich die ESLint-Erweiterung nicht in VSCode installiert, was Probleme verursachte. Habe es gemacht und es hat wieder funktioniert.

1283850cookie-checkESLint funktioniert nicht in VS Code?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy