gulp:如何缩短未知来源的目标文件夹?

时间:2015-12-17 00:52:40

标签: javascript gulp gulp-sass

我最近尝试使用gulp一点点,我想用它来编译多个sass文件。所以这就是我的任务:

gulp.task('dev', function () { 
   return gulp
   .src('vendor/proj/**/**/src/assets/scss/dev.scss')
   .pipe(sass())
   .pipe( rename (function (path) {
       path.basename = 'dev';
   }))
   .pipe(gulp.dest('public/css'));
});

除了我想修改目的地外,它正常工作。我不确定这是否可能,但编译的css最终会出现:public/css/folder1/subfolder1/src/assets/scss/dev.css
无论如何要将gss放入: public/css/folder1/subfolder1/dev.css

非常感谢!

1 个答案:

答案 0 :(得分:0)

您可以使用gulp-flatten。你的gulp任务应该类似于:

gulp.task('dev', function () { 
   return gulp
   .src('vendor/proj/**/**/src/assets/scss/dev.scss')
   .pipe(sass())
   .pipe( rename (function (path) {
       path.basename = 'dev';
   }))
   .pipe(flatten({ includeParents: 4} )) // number of parent folders to include
   .pipe(gulp.dest('public/css'));
});

这应该放在文件夹:public / css / folder1 / subfolder1中。您可以使用includeParents选项。