【发布时间】:2015-12-12 02:11:37
【问题描述】:
看看这段代码:
var elixir = require('laravel-elixir')
gulp = require('gulp'),
fs = require('fs');
gulp.task('t1', function() {
return gulp.src('1/1.js')
.pipe(gulp.dest('2'));
});
gulp.task('t2', function() {
// setTimeout(function() {
console.log(fs.existsSync('2/1.js'));
// }, 100);
return gulp.src('2/1.js')
.pipe(gulp.dest('3'));
});
elixir(function(mix) {
mix.task('t1').task('t2');
});
当我取消注释setTimeout,console.log 开始输出true。这意味着,第二个任务在第一个任务尚未完成时开始。有没有办法让它们一个接一个地运行?
我真正想做的是browserify我的js文件,附加一些其他文件(自定义任务)和version结果。但版本控制失败,因为该文件尚不存在。
附:在运行gulp 之前执行mkdir 1 && touch 1/1.js。并在每次运行前执行rm {2,3}/1.js。
【问题讨论】:
标签: javascript node.js gulp laravel-elixir