2017-10-20 16 views
0

gulp.watch로 시도해 보았지만 (gulp-watch) 새로운 파일을 추가 할 때 dest에 복사하지 마십시오.내 gulpfile은 파일을 편집 (변경)하고 삭제할 수 있지만 새로운 (추가) 파일을 복사하지 마십시오

어떻게해야합니까?

Thnks!

PD : 나는 버전 3.9.1

gulp.task('default', function() { 
    for(var i = 0; i < origen_web.length ; i++) { 
    var source = '../..' + '/dir' + '/**/*'; 
    var dist = '../../dist'; 

    watch(source, function(obj){ 
     copyFiles(obj, source, dist); 
    }); 
    } 
} 

function copyFiles(source, dist, obj) { 

    gulp.src(source) 
    .pipe(gulp.dest(dist)); 
} 

죄송에게 사용이 내 코드 더 적습니다.

+0

gulp 파일의 예를 게시 할 수 있습니까? – mutantkeyboard

+0

약간의 코드를 게시했습니다 :) –

+0

가능한 중복 https://stackoverflow.com/questions/22391527/gulps-gulp-watch-not-triggered-for-new-or-deleted-files – Mark

답변

-1

디렉토리의 절대 경로를 사용하십시오. Gulps gulp.watch not triggered for new or deleted files?

+0

그래,이 예제를 사용하지만 복사 된 모든 파일이 변경된 파일의 파일을 복사하면 새 파일로 작업하지 않습니다. S –

+0

아무 것도 던지지 않습니까? 스크립트에 해당 파일에 대한 권한이없는 것일 수 있습니까? 확인을 위해 파일을 복사하기 위해 nodejs fs API를 사용할 수 있습니까? https://nodejs.org/api/fs.html –

+0

약간의 코드를 게시했는데이 파일 (추가)이 복사 된 파일과 동일한 폴더에 있기 때문에 권한이 있습니다. –

0

확인의

중복 질문은 이것으로 시도합니다.

gulp.task('default', function() { 
    for(var i = 0; i < origen_web.length ; i++) { 
    var source = '../..' + '/dir' + '/**/*'; 
    var dist = '../../dist'; 

    watch(source, function(obj){ 
     copyFiles(obj, source, dist); 
    }); 
    } 
} 

function copyFiles(source, dist, obj) { 

    return gulp.src(source) // <-- here you force gulp to return the value 
    .pipe(gulp.dest(dist)) 
    .pipe(notify({message: "This message is triggered if the data has been transferred"})); 
}