Как сказать JSLint не запрашивать {в одной строке, если заявления
Прямо сейчас у меня есть следующий код:
if (c > last) break;
И Жлинт жалуется
jslint:crud.js:69:19:Expected '{' and instead saw 'break'.
Есть несколько способов преодолеть это:
if (c > last) { break; }
или же
if (c > last) {
break;
}
Но я бы хотел, чтобы jslint не жаловался, если оператор if находится в одной строке.
Есть ли способ настроить его?
Кстати: я работаю с возвышенным текстом и плагином sublime-jslint со следующей конфигурацией:
{
// Path to the jslint jar.
// Leave blank to use bundled jar.
"jslint_jar": "",
// Options pass to jslint.
"jslint_options": "--indent 2 --white --maxerr 10000 --nomen --browser --plusplus --es5",
// Ignore errors, regex.
"ignore_errors":
[
"Combine this with the previous 'var' statement.",
"It is not necessary to initialize"
],
// run jslint on save.
"run_on_save": false,
// debug flag.
"debug": false
}
Есть идеи как его настроить?
1 ответ
К сожалению, JSLint не предоставляет опцию конфигурации, которая скажет ему терпеть это. В глазах JSLint хорошей практикой является всегда следовать условному или итеративному оператору с оператором блока, даже если указанный блок будет содержать только один оператор.
Если вы переключитесь на JSHint, который гораздо более настраиваемый, вы можете использовать curly
возможность:
/*jshint curly: false */
Это настраивает JSHint для разрешения одного оператора без фигурных скобок, независимо от того, находится ли он в той же строке, что и предыдущий условный оператор или оператор итерации.
Если ваш плагин Sublime поддерживает только JSLint, я настоятельно рекомендую SublimeLinter, который я и использую. Он поддерживает как JSLint, так и JSHint.