gulp-copy - 意外行为
gulp-copy - unexpected behavior
使用 gulp 我想在处理文件之前将一些文件从一个地方复制到另一个地方。为了演示我的问题,我创建了以下 gulpfile.js
var gulp = require('gulp');
var copy = require('gulp-copy');
var debug = require('gulp-debug');
gulp.task('default', function () {
gulp.start('copy', 'list');
});
gulp.task('copy', function () { // copy files
gulp.src('source/*')
.pipe(gulp.dest('target'));
});
gulp.task('list', function () { // list all copies files
gulp.src('target/*')
.pipe(debug({title: 'file:'}));
});
现在,当我 运行 gulp 我得到以下输出:
testing [master●●●] % gulp
[20:34:57] Using gulpfile ~/WebstormProjects/testing/gulpfile.js
[20:34:57] Starting 'default'...
[20:34:57] Starting 'copy'...
[20:34:57] Finished 'copy' after 4.92 ms
[20:34:57] Starting 'list'...
[20:34:57] Finished 'list' after 1.84 ms
[20:34:57] Finished 'default' after 7.77 ms
[20:34:57] file: 0 items
如您所见,列表任务在 target
目录中看不到任何文件。现在,当我再次 运行 任务时,最后两行是:
[20:35:00] file: target/copyme
[20:35:00] file: 1 items
如您在第一个日志中所见,copy
任务在 list
任务继续之前开始和完成。但是,因为列表任务在 target
目录中没有看到任何文件,所以我假设复制任务是异步的。有什么建议可以让我在这里同步吗?
想要复现的朋友,这里是我的package.json
{
"dependencies": {
"gulp": "^3.8.11",
"gulp-copy": "0.0.2",
"gulp-debug": "^2.0.1"
}
}
为什么不使用 gulp 的内置依赖管理?
var gulp = require('gulp');
var copy = require('gulp-copy');
var debug = require('gulp-debug');
gulp.task('default', ['list']);
gulp.task('copy', function () { // copy files
return gulp.src('source/*')
.pipe(gulp.dest('target'));
});
gulp.task('list', ['copy'], function () { // list all copies files
return gulp.src('target/*')
.pipe(debug({title: 'file:'}));
});
使用 gulp 我想在处理文件之前将一些文件从一个地方复制到另一个地方。为了演示我的问题,我创建了以下 gulpfile.js
var gulp = require('gulp');
var copy = require('gulp-copy');
var debug = require('gulp-debug');
gulp.task('default', function () {
gulp.start('copy', 'list');
});
gulp.task('copy', function () { // copy files
gulp.src('source/*')
.pipe(gulp.dest('target'));
});
gulp.task('list', function () { // list all copies files
gulp.src('target/*')
.pipe(debug({title: 'file:'}));
});
现在,当我 运行 gulp 我得到以下输出:
testing [master●●●] % gulp
[20:34:57] Using gulpfile ~/WebstormProjects/testing/gulpfile.js
[20:34:57] Starting 'default'...
[20:34:57] Starting 'copy'...
[20:34:57] Finished 'copy' after 4.92 ms
[20:34:57] Starting 'list'...
[20:34:57] Finished 'list' after 1.84 ms
[20:34:57] Finished 'default' after 7.77 ms
[20:34:57] file: 0 items
如您所见,列表任务在 target
目录中看不到任何文件。现在,当我再次 运行 任务时,最后两行是:
[20:35:00] file: target/copyme
[20:35:00] file: 1 items
如您在第一个日志中所见,copy
任务在 list
任务继续之前开始和完成。但是,因为列表任务在 target
目录中没有看到任何文件,所以我假设复制任务是异步的。有什么建议可以让我在这里同步吗?
想要复现的朋友,这里是我的package.json
{
"dependencies": {
"gulp": "^3.8.11",
"gulp-copy": "0.0.2",
"gulp-debug": "^2.0.1"
}
}
为什么不使用 gulp 的内置依赖管理?
var gulp = require('gulp');
var copy = require('gulp-copy');
var debug = require('gulp-debug');
gulp.task('default', ['list']);
gulp.task('copy', function () { // copy files
return gulp.src('source/*')
.pipe(gulp.dest('target'));
});
gulp.task('list', ['copy'], function () { // list all copies files
return gulp.src('target/*')
.pipe(debug({title: 'file:'}));
});