Я попытался создать gulpfile.js для моего личного проекта веб-сайта. Я никогда не делал этого раньше, но с небольшим "пробником и ошибкой" он теперь работает приемлемым способом.
Единственное, что не работает даже после 1000 модификаций, - это простое копирование файлов и папок.
var files = {
data_src : [
'./files.json',
'data/**/*.*'
],
distribution_dest : '_distribution'
};
gulp.task('copy-data', function() {
gulp.src(files.data_src, { base: './' })
.pipe(gulp.dest(files.distribution_dest))
.pipe(notify({message: 'Data copied for distribution!'}));
});
Это должно скопировать все подпапки и файлы в gulp.dest
. Но он копирует только половину из них, некоторые папки будут проигнорированы, даже если я изменю их имена и т.д. (Никаких специальных символов, такой же структуры вложенных папок, как тот, который был скопирован правильно...) - ничего не получилось. Я просто не вижу в этом никакого шаблона.
Во время работы gulp нет сообщения об ошибке. Ничего, что могло бы помочь мне найти ошибку.
Почему некоторые копии или файлы исключены из копирования?
Я использую base
для сохранения структуры папки/подпапки; пробовал с и без "базы" → никаких эффектов на процесс копирования.
Я также изменил положение задачи "копии-данные" в списке. На самом деле это первая задача для запуска. Кажется, что никаких изменений в поведении не происходит, если это первый или последний.
gulp.task('default', function() {
gulp.run('copy-data', 'custom-sass', 'framework-sass', 'custom-js', 'framework-js', 'replace-tags', 'browser-sync');
... some watches ...
});
Структура папки данных выглядит следующим образом:
./data
|-doc
|---content
|---template
|-img
|---chart
|---icon
|---logo
|---pattern
|---people
|---photo
|---symbol
|-----brandklassen
|-----brandschutzzeichen
|-----gebotszeichen
|-----gefahrensymbole
|-----rettungszeichen
|-----verbotszeichen
|-----verkehrsrechtzeichen
|-----warnzeichen
|---wallpaper
/data/doc
, и все подпапки в порядке. /data/img/chart
до /data/img/people
также в порядке.
Внутри /data/img/photo
копируется только 14 из 21 изображений. /data/img/symbol
с подпапками и /data/img/wallpaper
полностью игнорировались.