javascript - 如何判断运行browserify的gulp任务何时完成?

标签 javascript gulp

我有这样一个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 ,那么它将有某种接受回调的onenddone 方法。在那种情况下,它会是这样的:

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/

相关文章:

javascript - 如何使用 SoundCloud API 添加上一个和下一个按钮

node.js - 使用 gulp 仅运行一个 mocha 测试文件

javascript - Gulp LiveReload 崩溃

reference - "Foundation - ReferenceError: primordials is not defined when starting a foundation zurb project."

javascript - 哪个 child 拥有最多糖果 算法问题

javascript - 如何动态调整Jquery resizable的大小

javascript - 观看 './**/*.js' 会导致 CPU 使用率过高

node.js - Jenkins 无法识别 gulp 命令

javascript - FullCalendar 中 "date change"的监听器?

javascript - jsp 和 javascript 中请求属性的对象索引数组