Gulp.js 작업, src로 돌아 갑니까?
나는 꿀꺽 마시기 시작하고 예제 설정을 살펴 보았습니다. 어떤 사람들은 다음과 같은 구조를 가지고 있습니다 :
gulp.task("XXXX", function() {
gulp.src("....
다른 사람들은 이것을 가지고 있습니다 :
gulp.task("XXXX", function() {
return gulp.src("....
src 의 수익이 어떻게 다른지 궁금 합니다.
당신은 return
작업이 비동기 있음을 나타냅니다. gulp.src()
스트림을 반환하므로 비동기입니다.
그것이 없으면 작업 시스템은 언제 끝났는지 알 수 없습니다. 문서를 읽으십시오 .
종속 작업이 있는 경우 작업을 실행하기 전에 해당 작업이 종속 작업이 완료 될 때까지 기다리려면 스트림 을 반환 해야 합니다.
예 :
// without return
gulp.task('task1', function() {
gulp.src('src/coffee/*.coffee')
/* eg compile coffeescript here */
.pipe(gulp.dest('src'));
});
gulp.task('task2', ['task1'], function() {
gulp.src('src/*.js')
/* eg minfify js here */
.pipe(gulp.dest('dest'));
});
이 예제 에서는 task2 가 실행 되기 전에 task1 이 완료 될 것으로 예상합니다 (예 : coffeescript 또는 기타 컴파일) . 그러나 아래 예와 같이 return 을 추가 하지 않으면 비동기 적으로 동기식으로 실행됩니다. task2 는 태스크 1이 완료되기를 기다리지 않았 으므로 task1 의 컴파일 된 출력을 선택하지 않기 때문에 컴파일 된 coffeescript는 축소 되지 않습니다 . 그래서 우리는 이런 상황에서 항상 돌아와야합니다.
// with return
gulp.task('task1', function() {
return gulp.src('**/*.coffee')
/* your operations here */
.pipe(gulp.dest('dest'));
});
gulp.task('task2', ['task1'], function() {
return gulp.src('**/*.js')
/* your operations here */
.pipe(gulp.dest('dest'));
});
편집 : 여기의 레시피가 자세히 설명합니다. https://github.com/gulpjs/gulp/blob/master/docs/recipes/running-tasks-in-series.md
작업 당 여러 스트림이있는 경우이 기능이 유용하다는 것을 알았습니다. 여러 스트림을 결합 / 병합하여 반환해야합니다.
var gulp = require('gulp');
var merge = require('gulp-merge');
gulp.task('test', function() {
var bootstrap = gulp.src('bootstrap/js/*.js')
.pipe(gulp.dest('public/bootstrap'));
var jquery = gulp.src('jquery.cookie/jquery.cookie.js')
.pipe(gulp.dest('public/jquery'));
return merge(bootstrap, jquery);
});
The alternative, using Gulps task definition structure, would be:
var gulp = require('gulp');
gulp.task('bootstrap', function() {
return gulp.src('bootstrap/js/*.js')
.pipe(gulp.dest('public/bootstrap'));
});
gulp.task('jquery', function() {
return gulp.src('jquery.cookie/jquery.cookie.js')
.pipe(gulp.dest('public/jquery'));
});
gulp.task('test', ['bootstrap', 'jquery']);
참고URL : https://stackoverflow.com/questions/21699146/gulp-js-task-return-on-src
'programing tip' 카테고리의 다른 글
타입 힌트를 사용해 복수의 리턴 타입을 지정하는 방법 (0) | 2020.07.02 |
---|---|
MySql에서 아포스트로피 ( ')를 피하는 방법? (0) | 2020.07.02 |
파이썬 모듈의 argparse 부분에 대한 테스트를 어떻게 작성합니까? (0) | 2020.07.02 |
에뮬레이터에서 Google Play 서비스 업데이트 (0) | 2020.07.02 |
이미 행에있는 내용을 완료하기 위해 bash 기록 완료를 어떻게 변경합니까? (0) | 2020.07.02 |