wake-up-neo.com

Warum gibt JSHint eine Warnung aus, wenn ich const benutze?

Dies ist der Fehler, den ich bei der Verwendung von const bekomme:

<error line="2" column="1" severity="warning" message="&apos;const&apos; is available in ES6 (use esnext option) or Mozilla JS extensions (use moz)." source="jshint.W104" />

Mein Code sieht so aus:

const Suites = {
    Spade: 1,
    Heart: 2,
    Diamond: 3,
    Club: 4
};

Der Code funktioniert gut, nur JSHint warnt mich jedes Mal.

225

Wenn Sie sich auf ECMAScript 6-Funktionen wie const verlassen, sollten Sie diese Option so einstellen, dass JSHint keine unnötigen Warnungen ausgibt. 

/ * jshint esnext: true * / (Edit 2015.12.29: Die Syntax wurde aktualisiert, um @ Olgas Kommentare wiederzugeben.

/*jshint esversion: 6 */

const Suites = {
    Spade: 1,
    Heart: 2,
    Diamond: 3,
    Club: 4
};

Diese Option teilt JSHint mit, dass Ihr Code die ECMAScript 6-spezifische Syntax verwendet . http://jshint.com/docs/options/#esversion

Edit 2017.06.11: Eine weitere Option basierend auf diese Antwort wurde hinzugefügt.

Während die Inline-Konfiguration für eine einzelne Datei gut funktioniert, können Sie diese Einstellung auch für das gesamte Projekt aktivieren, indem Sie im Stammverzeichnis Ihres Projekts eine .jshintrc-Datei erstellen und diese dort hinzufügen.

{
  "esversion": 6
}
402
James Hibbard

Sie können eine Datei mit dem Namen .jshintrc in root Ihrer App mit folgendem Inhalt hinzufügen, um diese Einstellung für die whole Lösung anzuwenden:

{
    "esversion": 6
}

James 'Antwort schlägt vor, dass Sie einen Kommentar /*jshint esversion: 6 */ für each -Datei hinzufügen können, aber es ist mehr Arbeit als nötig, wenn Sie viele Dateien steuern müssen.

240
Zanon

Ich habe ewig versucht, das zu beheben. Jede Lösung spricht von 'Einstellmöglichkeiten'. Ich weiß nicht was das bedeutet. Schließlich habe ich es herausgefunden. Sie können einfach eine auskommentierte Zeile am Anfang der Datei /*jshint esversion: 6 */ einfügen.

 Solution

30
Josh Pittman

Ich habe diese Warnung erhalten, wenn ich eine Exportanweisung verwende. Ich verwende VS Code und wählte einen ähnlichen Ansatz für Wenlong Jiang's Lösung. 

  1. Benutzereinstellungen
  2. JSHint Konfig
  3. "jshint.options": {} (Bearbeiten)
  4. Verwenden Sie doppelte Anführungszeichen bei Angabe von "esversion"

    Oder kopieren Sie dieses Snippet in die Benutzereinstellungen:

    "jshint.options": {
      "esversion": 6,
    }
    

Das Erstellen einer .jshintrc-Datei ist nicht erforderlich, wenn Sie die globalen Jshint-Einstellungen für Ihren Editor konfigurieren möchten

29

Wenn Sie VSCode verwenden:

  • Gehe zu Einstellungen -> Einstellungen (cmd + ,)
  • Geben Sie jshint.options in die Suchleiste ein
  • Bewegen Sie den Mauszeiger darüber und klicken Sie auf das Bleistiftsymbol
  • Es ist jetzt auf der rechten Seite angehängt.
  • Fügen Sie dem Optionsobjekt "esversion": 6 hinzu.

Oder fügen Sie dies einfach zu Ihren Benutzereinstellungen hinzu:

"jshint.options": {
    "esversion": 6
}
22
Phil

Sie können esversion: 6 innerhalb des Jshint-Optionsobjekts angeben. Bitte sehen Sie sich das Bild an. Ich benutze Grunt-Contrib-Jshint Plugin.

 enter image description here

15
Wenlong Jiang

Wenn Sie ECMAScript 6 verwenden, wird dieser Fehler von Ihrer IDE ausgelöst. 

Es gibt zwei Optionen:

wenn Sie nur eine Datei haben und den es6 verwenden möchten, fügen Sie am Ende der Datei unten eine Zeile hinzu.

/*jshint esversion: 6 */

Wenn Sie über eine Anzahl von js-Dateien verfügen oder ein Framework (wie nodejs express) verwenden, können Sie eine neue Datei mit dem Namen .jshintrc in Ihrem Stammverzeichnis erstellen und folgenden Code in der Datei hinzufügen:

{
    "esversion": 6
}

Wenn Sie die es6-Version für jedes Projekt weiter verwenden möchten, können Sie Ihre IDE konfigurieren.

1
Prashant Barve

Wenn Sie die Grunt-Konfiguration verwenden, müssen Sie die folgenden Schritte ausführen

Warnmeldung in Jshint:

 enter image description here

Lösung:

  1. Legen Sie die Jshint-Optionen fest und ordnen Sie die Datei .jshintrc.js zu

 enter image description here

  1. Erstellen Sie die Datei .jshintrc.js in dieser Datei, und fügen Sie den folgenden Code hinzu
 {
 "esversion": 6 
} 

Nach dieser Konfiguration erneut ausführen. Die Warnung wird übersprungen.

 enter image description here

0
Sridhar

Wenn Sie Webstorm verwenden und keine eigene Konfigurationsdatei haben, aktivieren Sie einfach EcmaScript.next in den Relaxing-Optionen in in

Einstellungen | Sprachen & Frameworks | JavaScript | Code-Qualitäts-Tools | JSHint

Diese Frage anzeigen How-do-I-lösen-diese-JSHint-ES6-Fehler

0
Sudhanshu Gaur

Erstellen Sie eine Datei namens "jshint_opts" mit folgendem Inhalt: { "Esversion": 6 }

Rufen Sie dann jshint mit einer Befehlszeile auf:

jshint --config jshint_opts lib/*. js

0
Alan Wendt