Eu estou fazendo linting no meu código JavaScript com este comando:
eslint src/**/*.js
Isso encontra centenas de erros de lintagem.
Estou tentando fazer com que o linting seja parte de um pipeline. Portanto, eu fiz uma tarefa de gole para isso.
const gulp = require("gulp");
const eslint = require("gulp-eslint");
gulp.task("lint", () => {
gulp.src(["src/**/*.js"])
.pipe(eslint())
.pipe(eslint.format())
.pipe(eslint.failAfterError());
});
No entanto, quando corro gulp lint
, passa:
Starting "lint"...
Finished "lint" after 35 ms
Eu não entendo porque isso passa. Eu também tentei isso:
gulp.task("lint", () => {
gulp.src(["src/**/*.js"])
.pipe(eslint())
});
Mas isso também passa.
Qualquer ideia porque gulp lint
não falha com um erro de lintagem?
Respostas:
1 para resposta № 1Se você precisar que o Gulp chame a tarefa e espere a conclusão, você precisa retornar um Promessa JavaScript de tarefa função.
Neste caso, adicionando a palavra-chave return
antes do seu gulp.src
ligue para o seu fiapos funciton significa que a promessa de que o gulp.src
retorna é passado para o mecanismo subjacente que Gulp usa e, como tal, Gulp pode obter o resultado do seu processo de linting.
const gulp = require("gulp");
const eslint = require("gulp-eslint");
gulp.task("lint", () => {
return gulp.src(["src/**/*.js"])
.pipe(eslint())
.pipe(eslint.format())
.pipe(eslint.failAfterError());
});