【发布时间】:2014-04-10 01:29:51
【问题描述】:
尝试创建一个 gulp 任务,将来自不同文件夹的一堆文件通过 LESS 管道传输,然后将它们输出到基于原始源的文件夹。考虑这个文件夹结构:
Project
+-- /Module_A
| +- /less
| | +- a.less
| +- a.css
|
+-- /Module_B
+- /less
| +- b.less
+- b.css
这是我的 gulpfile:
var gulp = require('gulp');
var gutil = require('gulp-util');
var less = require('gulp-less');
gulp.task('compileLess', function () {
gulp.src('./*/less/*.less')
.pipe(less())
.pipe(gulp.dest( ??? ));
});
gulp.task('default', ['compileLess']);
我知道 gulp.dest() 需要传入一个路径,但在我的示例中,路径会因源文件而异。那么如何从源中获取路径,对其进行修改,然后将其传递给 gulp.dest()?
或者我是不是走错了路?
【问题讨论】:
-
给定您的示例输入,输出应该是什么? Gulp 使用相对文件路径(基于第一个 glob 模式)来确定输出目录。
-
如果输入是
Project/Module_A/less/a.less,我希望输出是Project/Module_A/a.css。我能够使用 gulp-rename 插件完成。