2015-12-27 7 views
5

सर्वर पर गल्प चलाने पर यह कार्य खत्म करने के बाद बाहर नहीं निकलता है। यह मुझे मिलता है:gulp कार्यों को चलाने के बाद बाहर नहीं निकलता

[01:16:02] Using gulpfile /test/test/gulpfile.js 
[01:16:02] Starting 'clean'... 
[01:16:02] Finished 'clean' after 11 ms 
[01:16:02] Starting 'default'... 
[01:16:02] Starting 'styles'... 
[01:16:02] Starting 'scripts'... 
[01:16:02] Starting 'watch'... 
[01:16:02] Finished 'watch' after 20 ms 
[01:16:02] Finished 'default' after 40 ms 
[01:16:03] gulp-notify: [Gulp notification] Styles task complete 
[01:16:03] Finished 'styles' after 338 ms 
[01:16:03] gulp-notify: [Gulp notification] Scripts task complete 
[01:16:03] Finished 'scripts' after 921 ms 

यह वहां अटक गया और कमांड प्रॉम्प्ट पर वापस नहीं आया। और यह मेरा gulpfile.js है:

var gulp = require('gulp'), 
autoprefixer = require('gulp-autoprefixer'), 
uglify = require('gulp-uglify'), 
imagemin = require('gulp-imagemin'), 
rename = require('gulp-rename'), 
concat = require('gulp-concat'), 
notify = require('gulp-notify'), 
cache = require('gulp-cache'), 
livereload = require('gulp-livereload'), 
minifyCss = require('gulp-minify-css'), 
del = require('del'); 

gulp.task('styles', function() { 
    return gulp.src('./test/css/*.css') 
.pipe(autoprefixer('last 2 version')) 
.pipe(concat('main.css')) 
.pipe(gulp.dest('./dist/styles')) 
.pipe(rename({ suffix: '.min' })) 
.pipe(minifyCss()) 
.pipe(gulp.dest('./dist/styles')) 
.pipe(notify({ message: 'Styles task complete' })); 
}); 

    gulp.task('scripts', function() { 
return gulp.src('./test/js/*.js') 
.pipe(concat('main.js')) 
.pipe(gulp.dest('./dist/scripts')) 
.pipe(rename({ suffix: '.min' })) 
.pipe(uglify()) 
.pipe(gulp.dest('./dist/scripts')) 
.pipe(notify({ message: 'Scripts task complete' })); 
}); 


gulp.task('clean', function() { 
return del(['dist/styles', './dist/scripts']); 
}); 


gulp.task('default', ['clean'], function() { 
gulp.start('styles', 'scripts', 'watch'); 
}); 

gulp.task('watch', function() { 
gulp.watch('./test/css/*.css', ['styles']); 
gulp.watch('./test/*.js', ['scripts']); 

}); 

कमांड प्रॉम्प्ट पर वापस जाने का एकमात्र तरीका Ctrl + C के साथ है।

उत्तर

15

यदि आप डिफ़ॉल्ट गल्प कार्य चला रहे हैं (बिना किसी तर्क के कमांड लाइन पर gulp चलाकर), तो यह वापस नहीं आता है क्योंकि आपका डिफ़ॉल्ट कार्य आपके watch कार्य को कॉल करता है।

gulp.task('watch', function() { 
    gulp.watch('./test/css/*.css', ['styles']); 
    gulp.watch('./test/*.js', ['scripts']); 
}); 

यह कार्य निर्दिष्ट स्थानों को परिवर्तनों के लिए प्रतीक्षा कर देगा, और जब परिवर्तन होते हैं, तो निर्दिष्ट कार्य चलाएंगे। यह अपने आप पर वापस नहीं आता है। आपको इसे मैन्युअल रूप से बाधित करना होगा।

आप किसी अन्य कार्य है कि सिर्फ अपने कोड बनाता है और फिर बाहर निकल जाता है बनाना चाहते हैं, तो आप निम्न का उपयोग कर सकते हैं:

gulp.task('build', ['clean', 'styles', 'scripts']); 

और फिर आदेश के साथ इसे चलाने:

gulp build 
+0

DOH! (चेहरे) मुझे। तब तक स्पष्ट है जब आप इसके लिए नए हैं, सब कुछ एक बड़ी समस्या प्रतीत होता है। –

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