首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Gulp-filter正在过滤..没什么

Gulp-filter正在过滤..没什么
EN

Stack Overflow用户
提问于 2014-09-25 05:43:48
回答 1查看 1.1K关注 0票数 1

实际上,我的目录是这样的:

代码语言:javascript
复制
-Project
  -app
    -js
      -some.js
      -libs
        -some.js
        -some.js
  -dist
    -js
      -some.js
      -libs
        -some.js
        -some.js

我正在使用gulp来管理它,这就是我的问题,我不能成功地过滤出libs目录到我的js lint。(我只想扫描我自己的js,而不是lib)

所以我试了一下:

代码语言:javascript
复制
gulp.task('js', function(){
    var filter = gulpFilter(['**/*', '!app/js/libs/**/*.js']);
    gulp.src('app/js/**')
        .pipe(filter)
        .pipe(jshint())
        .pipe(jshint.reporter('jshint-stylish'))
        .pipe(filter.restore())
        .pipe(gulp.dest('./dist/js'))
});

但是jshint仍然适用于libs :/

欢迎任何帮助!:)

EN

回答 1

Stack Overflow用户

发布于 2014-09-27 23:29:17

实际上,你不需要过滤器来达到你想要的效果,因为gulp.src支持路径排除。将你的任务换成以下几项,你就会变得很好;)

代码语言:javascript
复制
gulp.task('js', function () {
    return gulp.src(['app/js/**/*.js', '!app/js/libs/**'])
        .pipe(jshint())
        .pipe(jshint.reporter('jshint-stylish'))
        .pipe(gulp.dest('./dist/js'))
});

编辑:考虑到你的评论,你应该使用

代码语言:javascript
复制
gulp.task('js', function(){
    var filter = gulpFilter(['*.js', '!app/js/libs/**']);
    return gulp.src('app/js/**')
        .pipe(filter)
        .pipe(jshint())
        .pipe(jshint.reporter('jshint-stylish'))
        .pipe(filter.restore())
        .pipe(gulp.dest('./dist/js'))
});
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26027039

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档