使用base dir时,Gulp不会复制文件

时间:2014-11-06 21:33:42

标签: node.js gulp

这是初始目录结构:

./src
./src/test.html
./gulpfile.js

目标只是复制" src / test.html" to" build / index.html"。我使用基本base选项来维护src/目录中相对于build/的目录结构。

此处gulpfile.js

var gulp = require('gulp');
var replace = require('gulp-replace');

gulp.task('default', function() {
  return gulp.src(['test.html'], {base: './src'})
    .pipe(gulp.dest('build'));
});

当我运行gulp时,我没有错误。     $ gulp     [15:26:24]使用gulpfile /tmp/testproject/gulpfile.js     [15:26:24]开始'默认' ...     [15:26:24]完成'默认'在8.02毫秒之后

但是,它没有创建build目录:

$ find .
.
./src
./src/test.html
./gulpfile.js

艾米我在这里错过了什么?

1 个答案:

答案 0 :(得分:2)

gulp.src正在搜索gulpfile.js所在文件夹中的文件。 您应该将任务更改为:

gulp.task('default', function() {
  return gulp.src(['src/test.html'], {base: 'src'})
    .pipe(gulp.dest('build'));
});

gulp.src使用base参数来计算它必须放在输出流中的相对路径,而不是设置其“当前”文件夹来读取文件。