我有这样一个gulp任务
gulp.task("js-min", function () {
browserify(config.paths.mainJs)
.transform(reactify)
.bundle()
.pipe(source('tec.min.js'))
.pipe(buffer())
.pipe(sourcemaps.init({loadMaps: true}))
.pipe(uglify())
.pipe(sourcemaps.write(config.paths.dist))
.pipe(gulp.dest(config.paths.dist));
});
创建应用程序的缩小版本。它由 gulp-watch
任务定期运行。我看到的问题是 gulp
告诉我这个任务在 30 毫秒内完成,但是如果我检查正在生成的文件,还需要 30 秒才能看到实际更新的新文件。
我该如何更改 gulp 任务 js-min
以便我确切知道文件在文件系统中完成更新的时间。
最佳答案
有两种解决方案,并且不知道您使用的是什么 browserify
包。
如果它是基于 promise 的,那么只需编辑您的代码以返回该 promise :
gulp.task("js-min", function () {
return browserify(config.paths.mainJs)
如果它不是基于 promise ,那么它将有某种接受回调的onend
或done
方法。在那种情况下,它会是这样的:
gulp.task("js-min", function (done) {
browserify(config.paths.mainJs)
.transform(reactify)
.bundle()
.pipe(source('tec.min.js'))
.pipe(buffer())
.pipe(sourcemaps.init({loadMaps: true}))
.pipe(uglify())
.pipe(sourcemaps.write(config.paths.dist))
.pipe(gulp.dest(config.paths.dist))
// THIS IS THE LINE TO CHANGE
.onfinish(done);
});
关于javascript - 如何判断运行browserify的gulp任务何时完成?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37601746/