我试图为我的个人网站项目创建一个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来保存文件夹/子文件夹结构;尝试使用和不使用“base” – >对复制过程没有影响。
我还在运行列表中更改了“copy-data”任务的位置。其实这是运行的第一个任务。无论是第一次还是最后一次,行为似乎都没有改变。
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 to / data / img / people也可以。
在/ data / img / photo中复制21张图像中的14张。
/ data / img /符号与子文件夹和/ data / img /壁纸被完全忽略。
解决了MYSELF!问题是由异步操作任务引起的。在继续之前添加返回强制gulp完成复制过程!
gulp.task('copy-data', function() {
return gulp.src(files.data_src, { base: './' })
.pipe(gulp.dest(files.distribution_dest))
.pipe(notify({message: 'Data copied for distribution!'}))
});
现在所有图像都将被复制!
相关文章
转载注明原文:javascript – Gulp不会按预期复制所有文件 - 代码日志