2016-01-17 7 views
0

У меня есть приложение. Мой исходный код приложения структурирована следующим образом:копирование файлов с помощью gulp

./ 
    gulpfile.js 
    src 
    img 
     bg.png 
     logo.png 
    data 
     list.json 
    favicon.ico 
    web.config 
    index.html 
    deploy 

Я пытаюсь использовать Gulp скопировать два файла: ./img/bg.png и ./data/list.json. Я хочу скопировать эти два файла в корень каталога развертывания. Другими словами, результат задачи должны иметь:

./ 
    deploy 
    imgs 
     bg.png 
    data 
     list.json 

Как написать глотком задачу сделать этот тип копирования? Меня смущает тот факт, что я хочу, чтобы моя задача копировала два отдельных файла вместо файлов, которые соответствуют шаблону. Я знаю, что если бы у меня была картина, я мог бы сделать это:

var copy = require('gulp-copy'); 
gulp.task('copy-resources', function() { 
    return gulp.src('./src/img/*.png') 
    .pipe(gulp.dest('./deploy')) 
    ; 
}); 

Тем не менее, я до сих пор не знаю, как сделать это с двумя отдельными файлами.

Благодаря

ответ

4

Вы можете создавать отдельные задачи для каждого целевого каталога, а затем объединить их с помощью общего «копировать-ресурсы» задачу.

gulp.task('copy-img', function() { 
    return gulp.src('./src/img/*.png') 
    .pipe(gulp.dest('./deploy/imgs')); 
}); 

gulp.task('copy-data', function() { 
    return gulp.src('./src/data/*.json') 
    .pipe(gulp.dest('./deploy/data')); 
}); 

gulp.task('copy-resources', ['copy-img', 'copy-data']); 
+0

Что делать, если мне нужно разместить файлы в двух отдельных каталогах? Я только что обновил свой вопрос. Я допустил ошибку. –

Смежные вопросы