을 꿀꺽 # 4.0을 사용하여, 나는 같은 gulp.parallel()의 사용을 좋아한다 :
var plugins = require('gulp-load-plugins');
var $ = plugins();
var jsFiles = {
// Libraries required by Foundation
"jquery" : [
"bower_components/jquery/dist/jquery.js",
"bower_components/motion-ui/dist/motion-ui.js",
"bower_components/what-input/dist/what-input.js"
],
"angular" : [
"bower_components/angular/angular.min.js",
"bower_components/angular-animate/angular-animate.min.js",
"bower_components/angular-aria/angular-aria.min.js",
"bower_components/angular-material/angular-material.min.js",
"bower_components/angular-messages/angular-messages.min.js",
"bower_components/angular-sanitize/angular-sanitize.min.js",
"bower_components/angular-ui-i18n/angular-ui-i18n.min.js"
],
// Core Foundation files
"foundation-sites" : [
"bower_components/foundation-sites/dist/js/foundation.js"
],
// Dropzone Library
"dropzone" : [
"bower_components/dropzone/dist/dropzone.js",
"bower_components/ng-dropzone/dist/ng-dropzone.min.js"
]
};
var defaultTasks = Object.keys(jsFiles);
defaultTasks.forEach(function (libName) {
gulp.task('scripts:'+libName, function() {
return gulp.src(jsFiles[libName])
//.pipe($.jshint()) // if you want it
//.pipe($.uglify()) // if you like it
//.pipe($.concat(libName+'.js')) // .min.js if you Uglified it
.pipe(gulp.dest('dist/lib/'+libName));
});
});
gulp.task('bundle_javascript_dependencies',
gulp.parallel(
defaultTasks.map(function(name) { return 'scripts:'+name; })
)
);
gulp.task('build',
gulp.series(
'clean',
gulp.parallel(/* Any other task of function */ 'bundle_javascript_dependencies')
)
);
나를 위해 일하는 것이 좋습니다. OverZealous에게 감사의 말을 전합니다.
이 솔루션은 저에게 적합하지 않았습니다. createTask (key)로는 충분하지 않습니다. gulp.task (key)를 명시 적으로 호출하지 않으면 gulp가 기본 작업을 수행 할 때 해당 작업을 찾을 수 없습니다. 나는 oaleynik의 대답을 사용하여 끝났다. – Chris
어떻게 모든 작업을 비동기로 실행할 수 있습니까? –