使用gulp.dest进行Gulp 4资产复制

时间:2017-05-01 19:05:24

标签: gulp-4

我几周前就开始工作了,但出于某种原因,以下内容不再将我的文件从assets目录复制到dist目录。

const gs = gulp.series,
      gp = gulp.parallel;

gulp.task('fonts', (done) => {
    gulp.src([
            'node_modules/font-awesome/fonts/*'
        ])
    .pipe(gulp.dest(paths.dist+"/fonts/fontawesome"));
    done();
})


gulp.task('assets', gs('fonts'), (done) => {
    gulp.src([
        'assets/**/*', // all files
        'assets/**/.*', // all hidden files
        '!assets/{scripts,scripts/**}', //ignore scripts directory.
        '!assets/{stylesheets,stylesheets/**}' //ignore scripts directory.
    ])
    .pipe(gulp.dest(paths.dist));
    done();
});

它确实创建了fonts文件夹,并从font-awesome中复制了这些字体,但这是关于它的。

如果我从“资产”中移除gs('fonts')。任务,它似乎确实正常工作。

我的目录结构是:

资产

  • /字体
  • / IMG
  • /脚本
  • /样式表
  • 的.htaccess
  • .robots.txt

我已经尝试将路径直接放到.htaccess文件中,它也不会被复制。想法?

另外 - 如果有更好的方式来写这个,我可以接受建议。

1 个答案:

答案 0 :(得分:0)

我明白了。

gulp.task('fonts', (done) => {
    gulp.src([
            'node_modules/font-awesome/fonts/*'
        ])
    .pipe(gulp.dest(paths.dist+"/fonts/fontawesome"));
    done();
})



gulp.task('assets', gs('fonts', (done) => {
    gulp.src([
        'assets/**/*', // all files
        'assets/**/.*', // all hidden files
        '!assets/{scripts,scripts/**}', //ignore scripts directory.
        '!assets/{stylesheets,stylesheets/**}' //ignore scripts directory.
    ])
    .pipe(gulp.dest(paths.dist));
    done();
}));

我的资产任务是调用'字体'任务只是因为我没有在gulp.series调用中包含回调函数。 gs('fonts'), (done) vs gs('fonts', (done)