Antworten:
Ja, es gibt einen Weg. Zwei in der Tat. Im Oktober 2013 hat jshint eine Möglichkeit hinzugefügt, Codeblöcke wie diese zu ignorieren:
// Code here will be linted with JSHint.
/* jshint ignore:start */
// Code here will be ignored by JSHint.
/* jshint ignore:end */
// Code here will be linted with JSHint.
Sie können auch eine einzelne Zeile mit einem nachfolgenden Kommentar wie folgt ignorieren:
ignoreThis(); // jshint ignore:line
// jshint ignore:line
- funktioniert gut mit;(function() { // jshint ignore:line
bad option: 'ignore'
herumgekommen, indem ich die spezifische Option für die Zeile verwendet habe, die ich ignorieren möchte. In meinem Fall wollte ich ignorieren, if (x == null)
weil ich möchte, dass es mehr als nur null ist und /* jshint eqnull:true */
in derselben Funktion wie das if
zum Stummschalten von JSHint verwendet wird.
Die "böse" Antwort hat bei mir nicht funktioniert. Stattdessen habe ich das verwendet, was auf der JSHints- Dokumentenseite empfohlen wurde . Wenn Sie die ausgelöste Warnung kennen, können Sie sie für einen Codeblock deaktivieren. Zum Beispiel verwende ich Code von Drittanbietern, der keine Kamelfallfunktionen verwendet, aber meine JSHint-Regeln erfordern dies, was zu einer Warnung führte. Um es zum Schweigen zu bringen, schrieb ich:
/*jshint -W106 */
save_state(id);
/*jshint +W106 */
--verbose
dem Befehl hinzufügen müssen, um die Warnnummer zu erhalten.
Wie Sie in der Dokumentation von JSHint sehen können , können Sie die Optionen pro Funktion oder pro Datei ändern . In Ihrem Fall platzieren Sie einfach einen Kommentar in Ihrer Datei oder noch lokaler in der folgenden Funktion eval
:
/*jshint evil:true */
function helloEval(str) {
/*jshint evil:true */
eval(str);
}