在gulp中复制文件时可以删除文件夹结构吗?

i_a*_*iot 61 gulp

如果我使用:

 gulp.src(['app/client/**/*.html'])
  .pipe(gulp.dest('dist'));
Run Code Online (Sandbox Code Playgroud)

我的.html文件所在的文件夹结构是在dist文件夹中维护的,但我想完全删除文件夹结构,而只是在我的dist文件夹中删除一个平面层次结构.

Ben*_*Ben 120

你可以gulp-rename用来完成这个:

var rename = require('gulp-rename');

gulp.src('app/client/**/*.html')
  .pipe(rename({dirname: ''}))
  .pipe(gulp.dest('dist'));
Run Code Online (Sandbox Code Playgroud)

  • 我很惊讶这不是一个标准的gulp功能 - 虽然工作得很好.谢谢!! (7认同)
  • 您如何评价*gulp-flatten*与*gulp-rename*?另外,Gulp 4中是否有内置功能? (2认同)
  • 我选择 gulp-rename 而不是 gulp-flatten - 每个 lib 都少了一点痛苦......而且 gulp-rename 更通用和常见。 (2认同)

c01*_*01r 30

您可以使用gulp-flatten https://www.npmjs.com/package/gulp-flatten

    app
    ??? logo
    ?   ??? logo.styl
    ??? sidebar
        ??? sidebar.styl
    
    var flatten = require('gulp-flatten');
    gulp.src('app/**/*.styl')
      .pipe(flatten())
      .pipe(gulp.dest('dist/'));
    
    dist
    ??? logo.styl
    ??? sidebar.styl