我有一个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
。
如果有一种更简单的方法来做这件事,我肯定会更喜欢这个解决方案。谢谢!
https://stackoverflow.com/questions/23247642
复制相似问题