2015-10-19 21 views
7

में वर्तमान फ़ाइल नाम का उपयोग करके मैं अपनी फाइल को अपनी जीएसपी फ़ाइल के साथ अपनी गलप स्रोत फ़ाइलों में प्रस्तुत करने की कोशिश कर रहा हूं, लेकिन मैं यह नहीं समझ सकता कि pipe में वर्तमान फ़ाइल नाम का उपयोग कैसे करें समारोह।गुलप, 'पाइप()' फ़ंक्शन

var gulp = require('gulp'); 
var handlebars = require('handlebars'); 
var gulpHandlebars = require('gulp-compile-handlebars'); 

gulp.task('compile-with-sample-data', function() { 
    var options = {} 
    return gulp.src('./src/**/*.html') 
    .pipe(gulpHandlebars({ data: require('./data/' + filename +'.json') }, options)) 
    .pipe(gulp.dest('./build/')); 

}); 

मैं यह सिर्फ require('./data/orders-complete.json') का उपयोग करके हर बार एक ही फाइल के साथ काम करने कहां मिल सकता है:

var gulp = require('gulp'); 
var handlebars = require('handlebars'); 
var gulpHandlebars = require('gulp-compile-handlebars'); 

gulp.task('compile-with-sample-data', function() { 
    var options = {} 
    return gulp.src('./src/**/*.html') 
    .pipe(gulpHandlebars({ data: require('./data/orders-complete.json') }, options)) 
    .pipe(gulp.dest('./build/')); 

}); 

यह स्पष्ट मैं यह कैसे करना होगा नहीं है।

+1

लगता है जैसे आपको अपने फ़ाइल पथों का पर्दाफाश करने के लिए [gulp-tap] (https://www.npmjs.com/package/gulp-tap/) जैसे कुछ चाहिए, यह [answer] (http: // stackoverflow देखें। कॉम/प्रश्न/21806925/get-the-current-file-name-in-gulp-src) – 1cgonza

+0

क्या आप इसे काम करने में कामयाब रहे? गल्प-टैप के साथ वांछित प्रभाव प्राप्त नहीं कर सकते हैं – Femel

उत्तर

4

gulp-tap का उपयोग करें, यह आपको फ़ाइल नाम प्राप्त करने और यहां तक ​​कि डाउनस्ट्रीम पाइप के लिए भी बदलने में सक्षम बनाता है।