मेरे पास एक gulp कार्य है जो .css फ़ाइलों को .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)
, यह कोड ऐसा लगता है जैसे इसे ठीक काम करना चाहिए। हालाँकि, परिणामस्वरूप सीएसएस फाइलें एक निर्देशिका से अधिक रखी जा रही हैं जो मैं अपेक्षा कर रहा हूं। यह कहाँ होना चाहिए project/sass/partials
, परिणामस्वरूप फ़ाइल पथ बस है project/partials
।
यदि ऐसा करने का एक बहुत सरल तरीका है, तो मैं निश्चित रूप से उस समाधान की और भी सराहना करूंगा। धन्यवाद!
sass
फ़ोल्डर में डाल दिया जाए ?