Gulp任务对称为css的同级文件夹的补充较少

时间:2015-11-03 12:03:12

标签: less gulp gulp-less visual-studio-code

我希望在Visual Studio Code中有一个gulp任务,它可以使用扩展名.less监视名为less的文件夹中的所有文件。找到后,任务必须将较少的文件编译到与less文件夹相同级别的名为css的文件夹中。

当前代码:



  
gulp.task('less', function() {
    gulp.src('less/*.less',{ cwd:'..' })
        .pipe(less())
        .pipe(gulp.dest( 'css' ), { cwd:'..' });
});

gulp.task('default', function() {
    gulp.watch('./**/less/*.less', ['less']);
}); 




我想要的是什么:

  • X
    • ý
      • style.less
    • CSS
      • 的style.css

以上代码的作用:

  • X
    • ý
      • style.less
  • CSS
    • ÿ
        • 的style.css

当我在路径中具体时,我有这个工作,但问题是我在多个级别上的文件夹较少。我怎么解决这个问题?

3 个答案:

答案 0 :(得分:1)

我知道这有点老问题,但觉得值得分享我的答案。

gulp.task('app:less', [], function () {
return gulp.src(['./src/**/*.less'], { base: './src/' })
    .pipe(less())
    .pipe(gulp.dest('./src/'));
});

base选项设置为根文件夹dest路径./src/为我工作。

答案 1 :(得分:0)

目前无法做到这一点。唯一可以帮助您找到解决方案的是gulp-flatten。但是,这需要指定要包含的固定数量的父项。在您的情况下,如果您有不同级别的文件夹,则需要为每种情况指定不同的编号。因此,唯一的选择是修改扁平代码以支持像excludeParents这样的东西,相反的是扁平化,即排除固定数量的父母(在你的情况下,1)。

答案 2 :(得分:0)

试试这个:

gulp.task('less', function() {
    gulp.src(['**/*.less', *.less],{ cwd:'less' })
        .pipe(less())
        .pipe(gulp.dest('css'));
});