У меня есть задача gulp, которая пытается преобразовать файлы .scss в файлы .css (используя gulp-ruby-sass), а затем поместить полученный файл .css в то же место, где он нашел исходный файл. Проблема в том, что, поскольку я использую шаблон подстановки, я не обязательно знаю, где хранится исходный файл.
В приведенном ниже коде я пытаюсь использовать gulp-tap, чтобы подключиться к потоку и выяснить путь к текущему файлу, из которого был прочитан поток:
gulp.task('convertSass', function() {
var fileLocation = "";
gulp.src("sass/**/*.scss")
.pipe(sass())
.pipe(tap(function(file,t){
fileLocation = path.dirname(file.path);
console.log(fileLocation);
}))
.pipe(gulp.dest(fileLocation));
});
Судя по выходным данным console.log(fileLocation)
, этот код должен работать нормально. Однако полученные файлы CSS, похоже, помещены на один каталог выше, чем я ожидал. Там, где он должен быть project/sass/partials
, результирующий путь к файлу будет просто project/partials
.
Если есть более простой способ сделать это, я определенно ценю это решение еще больше. Спасибо!
sass
папку?