gulpfile.js
gulp.task('browser-bundle', ['react'], function() {
...
});
gulp.task('react', function(){
gulp.src(options.JSX_SOURCE)
.pipe(react())
.pipe(gulp.dest(options.JSX_DEST))
});
如您所见,我有对应于react任务的浏览器捆绑任务。我相信这可以按预期工作,因为在输出中我看到了:
[gulp] Running 'react'...
[gulp] Finished 'react' in 3.43 ms
[gulp] Running 'browser-bundle'...
但是,尽管react任务已经完成,但是它应该写入操作系统的文件还不存在。我注意到,如果我在浏览器捆绑软件命令中放置了一个sleep语句,那么它可以按预期工作,但是对我来说似乎有点不客气。
如果我希望在将文件(来自gulp.dest)同步写入磁盘之前不将React任务视为已完成,我该怎么办?
您需要一个return语句:
gulp.task('react', function(){
return gulp.src(options.JSX_SOURCE)
.pipe(react())
.pipe(gulp.dest(options.JSX_DEST))
});
这样,我的所有写操作都在处理下一个任务之前完成。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句