Dies ist der Fehler, den ich bei der Verwendung von const erhalte:
<error line="2" column="1" severity="warning" message="'const' is available in ES6 (use esnext option) or Mozilla JS extensions (use moz)." source="jshint.W104" />
Mein Code sieht folgendermaßen aus:
const Suites = {
Spade: 1,
Heart: 2,
Diamond: 3,
Club: 4
};
Der Code funktioniert einwandfrei, nur JSHint warnt mich jedes Mal.
"use esnext option"
. Und warum? Ist diese Fehlermeldung nicht ziemlich klar?const
ist (noch) kein Standard-JS.Antworten:
Wenn Sie sich auf ECMAScript 6-Funktionen wie verlassen
const
, sollten Sie diese Option festlegen, damit JSHint keine unnötigen Warnungen auslöst./ * jshint esnext: true * /( Edit 2015.12.29 : Aktualisierte Syntax, um @ Olgas Kommentare widerzuspiegeln )Diese Option teilt JSHint, wie der Name schon sagt, mit, dass Ihr Code die ECMAScript 6-spezifische Syntax verwendet. http://jshint.com/docs/options/#esversion
Edit 2017.06.11 : Basierend auf dieser Antwort wurde eine weitere Option 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 eine
.jshintrc
Datei im Stammverzeichnis Ihres Projekts erstellen und dort hinzufügen.quelle
Warning This option has been deprecated and will be removed in the next major release of JSHint. Use esversion: 6 instead.
obwohl mein in Webstorm integriertes Plugin keine neue Option erkennt. Am Ende habe ich beide angegeben.Sie können eine Datei hinzufügen namens .jshintrc in Ihrer App root mit folgendem Inhalt gelten diese Einstellung für die gesamte Lösung :
James 'Antwort legt nahe, dass Sie
/*jshint esversion: 6 */
für jede Datei einen Kommentar hinzufügen können , aber es ist mehr Arbeit als nötig, wenn Sie viele Dateien steuern müssen.quelle
.jshintrc
.JSHint will start looking for this file in the same directory as the file that's being linted. If not found, it will move one level up the directory tree all the way up to the filesystem root. (Note that if the input comes from stdin, JSHint doesn't attempt to find a configuration file)
Ich habe dieselbe Warnung erhalten, wenn ich eine Exportanweisung verwendet habe. Ich verwende VS Code und verwende einen ähnlichen Ansatz wie die Lösung von Wenlong Jiang.
"jshint.options": {}
(Bearbeiten)Verwenden Sie bei der Angabe doppelte Anführungszeichen
"esversion"
Oder kopieren Sie dieses Snippet in die Benutzereinstellungen:
Das Erstellen einer
.jshintrc
Datei ist nicht erforderlich, wenn Sie die globalen jshint-Einstellungen für Ihren Editor konfigurieren möchtenquelle
Wenn Sie VSCode verwenden:
1.
cmd + ,
)jshint.options
in die Suchleiste ein"esversion": 6
zu dem Optionen - Objekt.2.
Oder fügen Sie dies einfach Ihren Benutzereinstellungen hinzu:
[UPDATE] neue vscode-Einstellungen
cmd + ,
)jshint
in search ein2.
quelle
Ich habe ewig versucht, das zu beheben. In jeder Lösung geht es um "Einstellungsoptionen". Ich weiß nicht was das bedeutet. Schließlich habe ich es herausgefunden. Sie können einfach eine auskommentierte Zeile oben in die Datei einfügen
/*jshint esversion: 6 */
.quelle
.jshintrc
und dann den folgenden Code zur Datei hinzuzufügen{ "esnext": true }
{ "esnext": true }
ist jetzt veraltet . Sie sollten jetzt{ "esversion": 6 }
stattdessen verwenden."esnext": true
ich dies nur durch die Verwendung lösen konnte."esversion": 6
hatte keine Wirkung.Sie können esversion: 6 innerhalb des jshint options-Objekts angeben . Bitte sehen Sie das Bild. Ich benutze das Grunt-Contrib-Jshint-Plugin.
quelle
Wenn Sie ECMAScript 6 verwenden, wird dieser Fehler von Ihrer IDE ausgelöst.
Es stehen zwei Optionen zur Verfügung:
Wenn Sie nur eine Datei haben und es6 verwenden möchten, fügen Sie einfach die folgende Zeile oben in die Datei ein.
Oder wenn Sie eine Anzahl von js-Dateien haben oder ein Framework verwenden (wie nodejs express), können Sie eine neue Datei mit dem Namen
.jshintrc
in Ihrem Stammverzeichnis erstellen und den folgenden Code in die Datei einfügen:Wenn Sie die es6-Version für jedes Projekt verwenden möchten, können Sie Ihre IDE konfigurieren.
quelle
In Ihrer package.json können Sie Jshint anweisen, es6 wie folgt zu verwenden
quelle
Wenn Sie Webstorm verwenden und keine eigene Konfigurationsdatei haben, aktivieren Sie einfach die Option Entspannen
EcmaScript.next
inSiehe diese Frage Wie-löse ich-diese-JSHint-ES6-Fehler?
quelle
Wenn Sie die Grunt-Konfiguration verwenden, müssen Sie die folgenden Schritte ausführen
Warnmeldung in Jshint:
Lösung:
Nachdem Sie dies konfiguriert haben, führen Sie es erneut aus. Die Warnung wird übersprungen.
quelle
Erstellen Sie eine Datei mit dem Namen jshint_opts mit folgendem Inhalt: {"esversion": 6}
Rufen Sie dann jshint mit so etwas wie dieser Befehlszeile auf:
jshint --config jshint_opts lib / *. js
quelle
Für SublimeText 3 auf Mac:
quelle
Mai 2020 Hier ist eine einfache Lösung, die ich gefunden habe und die für alle meine Projekte unter Windows aufgelöst werden kann. Wenn sich Ihr Projekt irgendwo im Verzeichnis c: befindet, erstellen Sie eine neue Datei .jshintrc und speichern Sie sie im C-Verzeichnis. Öffnen Sie diese .jshintrc-Datei und schreiben Sie
{ "esversion": 6}
und das ist es. Die Warnungen sollten verschwinden, dasselbe funktioniert im Verzeichnis dJa, Sie können diese Einstellung auch nur für das jeweilige Projekt aktivieren, indem Sie eine .jshintrc-Datei im Stammverzeichnis Ihres Projekts erstellen und hinzufügen
{ "esversion": 6}
quelle
Erstellen Sie eine
.jshintrc
Datei im Stammverzeichnis und fügen Sie dort die neueste js-Version:"esversion": 9
und asi-Version hinzu:"asi": true
( Dies hilft Ihnen, die Verwendung von Semikolons zu vermeiden.)quelle
Wenn Sie Sublime Text 3 verwenden:
quelle
In einer neuen Version von Dreamweaver, um diesen Fehler zu beheben
Und der Go-to-js-Regelsatz bearbeiten und vorbei
"jshintConfig": {"esversion": 6}
quelle