Tengo una tarea de gulp que intenta convertir archivos .scss en archivos .css (usando gulp-ruby-sass) y luego coloco el archivo .css resultante en el mismo lugar donde encontró el archivo original. El problema es que, dado que estoy usando un patrón globbing, no sé necesariamente dónde está almacenado el archivo original.
En el siguiente código, estoy tratando de usar gulp-tap para acceder a la transmisión y averiguar la ruta del archivo actual desde la que se leyó la transmisión:
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));
});
Según la salida del console.log(fileLocation)
, este código parece que debería funcionar bien. Sin embargo, los archivos CSS resultantes parecen estar ubicados un directorio más alto de lo que esperaba. Donde debería estar project/sass/partials
, la ruta del archivo resultante es solo project/partials
.
Si hay una forma mucho más sencilla de hacer esto, definitivamente agradecería aún más esa solución. ¡Gracias!
sass
carpeta?