我在继承的解决方案中有以下文件夹结构
.\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。
我从https://github.com/johnpapa/pluralsight-gulp/blob/master/.jscsrc获取的.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 }));
});
我正在尝试更新.jscsrc中的excludeFiles以排除以下内容:
.\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
以排除项目根目录中的文件以及包含所有后续文件和文件夹的子文件夹?
答案 0 :(得分:7)
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 }));
});