Задать вопрос

VSCode, Gulp и Eslint: кто из них врет?

Всем доброго дня.

Прошу помочь разобраться с настройкой линтера в Visual Studio Code и Gulp. Итак, имеется проект, собираемый Gulp'ом; для проекта есть таск:
var gulp = require("gulp");
var eslint = require("gulp-eslint");

gulp.task("lint", function () {
	return gulp.src("js/**")
		.pipe(eslint({ fix: true }))
		.pipe(eslint.format())
		.pipe(eslint.failAfterError());
});

В корне, как полагается, лежит .eslintrc, в котором задано, скажем, такое правило:
{
    "extends": "eslint:recommended",

    "parser": "babel-eslint",

    "env": { "browser": true, "jquery": true, "es6": true },

    "parserOptions": {
        "ecmaVersion": 6,
        "sourceType": "module",
        "ecmaFeatures": { "classes": true }
    },

    "rules": { "strict": [2, "function"] }
}

Пишу в каком-нибудь JS-файлике функцию без "use strict":
function dummy() {
    console.log("dummy");
}

В VSCode эта функция подчеркивается eslint'ом как ошибка: Use the function for of "use strict". Вместе с тем, если я делаю gulp lint, то никаких ошибок не выдается.

Итого, вопрос: кто же из всех этих ребят врет-то, а кто - прав?
  • Вопрос задан
  • 645 просмотров
Подписаться 3 Оценить Комментировать
Решения вопроса 1
ShadowOfCasper
@ShadowOfCasper
Middle User Interface Web Developer

Use the function for of "use strict"

Это скорее warn, а не error. Поэтому в консоль ничего и не выводится. Просто в VSCode консолька показывает предупреждения eslint, а терминал - видимо нет. К тому же у тебя наверняка код компилируется, поскольку, в отличие от error, warn - не повод прерывать линтинг.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы