Как заставить gulp-jshint игнорировать папки

У меня есть следующая структура папок в решении, которое я унаследовал

.\gulp.config.js
.\gulpfile.js
.\.jscsrc
.\.jshintrc
.\default.js
.\Resources\js\main.js
.\Resources\js\modules\   various user created js files
.\Resources\js\vendor\    various js files i.e jQuery

Я установил gulp-jscs и gulp-jshint.

.Jscsrc, который я взял с https://github.com/johnpapa/pluralsight-gulp/blob/master/.jscsrc.

У меня есть следующее в gulpfile.js:

'use strict'

var gulp = require('gulp');
var jshint = require('gulp-jshint');
var jscs = require('gulp-jscs');

gulp.task('verifyJS',function(){
    gulp.src([
        './Resources/**/*.js',
        './*.js'
    ])
    .pipe(jscs())
    .pipe(jshint())
    .pipe(jshint.reporter('jshint-stylish', { verbose: true }));
});

Я пытаюсь обновить excludeFiles в.jscsrc, чтобы исключить следующее:

.\default.js 
.\resources\js\vendor

Вот что я попробовал:

 "excludeFiles": [
     "node_modules/**",
     "bower_components/**",
     "Resources/js/vendor/**", // vendor supplied files. ie jQuery
     "./Resources/js/vendor/**", 
     "default.js", 
     "/default.js", 
     "./default.js", 
 ],

Я включил все комбинации, которые я пробовал.

Но когда я бегу gulp verifyJS это все еще включает файлы, которые я хочу исключить.

Как правильно установить excludeFiles исключить файл в корне проекта и подпапке со всеми последующими файлами и папками?

1 ответ

Решение

gulp-jshint не волнует, что у тебя .jscsrc так как это файл конфигурации для gulp-jscs, Тебе необходимо .jshintignore файл вместо.

Вот как можно игнорировать файлы вашего поставщика в обоих gulp-jscs а также gulp-jshint:

.jscsrc

"excludeFiles": [
  "node_modules/**",
  "bower_components/**",
  "Resources/js/vendor/**",
  "default.js", 
],

.jshintignore

node_modules/**
bower_components/**
Resources/js/vendor/**
default.js

gulpfile.js

gulp.task('verifyJS', function(){
  return gulp.src([
    './Resources/**/*.js',
    './*.js'
  ])
  .pipe(jscs())
  .pipe(jscs.reporter()) // you forgot this
  .pipe(jshint())
  .pipe(jshint.reporter('jshint-stylish', { verbose: true }));
});
Другие вопросы по тегам