2014-08-28 7 views
11

मौजूद है जब मैं, संकलन कर रहा हूँ के विकास के लिए, घूँट में एक फ़ाइल केवल यदि वह मौजूद है शामिल करने के लिए देख रहा हूँ में शामिल हैं। वर्तमान में मैं निम्नलिखित है:सिर्फ अगर

gulp.task('compile:js:development', function() { 
    return gulp.src([ 
    'src/js/**/*.js', 
    ]).pipe(concat('dist.js')) 
    .pipe(gulp.dest('compiled/js/')) 
}); 

मैं इस सरणी के लिए एक और फ़ाइल जोड़ने की जरूरत है, लेकिन यह है कि फ़ाइल मौजूद है ही अगर। मैंने gulp-if देखा है लेकिन मुझे नहीं लगता कि इसमें क्षमता है जिसे मैं ढूंढ रहा हूं।

मैं भी डेवलपर कि इस फाइल मौजूद नहीं है, जब कंसोल में विकास के लिए संकलन चेतावनी देने के लिए करना चाहते हैं। ताकि आप अपने gulpfile में किसी भी नोड कार्यों का उपयोग कर सकते हैं

उत्तर

16

Gulp, बस एक नोड आवेदन है। आप आसानी से उपयोग कर रहा fs.exists()

gulp.task('compile:js:development', function() { 
    var fs = require('fs'), 
     files = ['src/js/**/*.js'], 
     extraFile = 'path/to/other/file'; 

    if (fs.existsSync(extraFile)) { 
    files.push(extraFile); 
    } else { 
    console.log('FILE DOES NOT EXIST'); 
    } 

    return gulp.src(files) 
    .pipe(concat('dist.js')) 
    .pipe(gulp.dest('compiled/js/')) 
}); 
+0

आप कैसे एक एक घूंट कार्य में इस का प्रयोग करेंगे js संकलित करने के लिए एक उदाहरण प्रदान कर सकते हैं एक फ़ाइल के अस्तित्व की जाँच कर सकते हैं? – user3379926

+1

निश्चित, संपादित उत्तर। –

+1

'gulp.src' में पहले विकल्प या तो 'स्ट्रिंग' या 'ऐरे' हो सकते हैं और मौजूदा फ़ाइलों को अनदेखा नहीं किया जा सकता है, इसलिए मुझे लगता है कि इसे 'gulp.src ([' src/js/** ' /*.js ',' पथ/से/अन्य/फ़ाइल ']) ' –

संबंधित मुद्दे