Gulp.dest()使用多个globs时

时间:2018-04-30 12:27:12

标签: gulp gulp-less gulp-rename

我遇到了一个glob和gulp.dest()的问题。我的任务看起来像这样

return gulp.src('./clients/*/assets/less/*.less',{ base: process.cwd() })
    .pipe(less({
        paths:[path.join(__dirname, 'less')]
    }).on('error', function(err){
        gutil.log(err);
        this.emit('end');
    }))
    .pipe(autoprefixer({
        browsers: ['last 2 versions'],
        cascade: false
    }))
    .pipe(gulp.dest(function(file){
        return path.normalize(path.join(file.path, '../css'));
    }));

如果我的路径是./clients/my-client/assets/less/style.less,则路径最终为`./clients/my-client/assets/css/my-client/assets/less/css 我尝试使用像

这样的重命名功能
.pipe(rename(function (path) {
    path.dirname = '';
}))

之前所做的一切都是将文件放在./clients/css/style.css

所需的目录应为./clients/my-client/assets/less/style.css,并认为这一切都相当容易,也许就是这样,但我真的很挣扎。任何帮助将非常感激!

1 个答案:

答案 0 :(得分:0)

我觉得这不是一个很好的解决方案,考虑到它在理论上可能会出错,但它现在对我有用。

我使用gulp-rename简单地替换了lesscss的{​​{1}}。

dirname