从咕unt声到咕lp声

高洛·罗登(Golo Roden)

我目前正在尝试将Grunt文件转换为Gulp文件。我的第一个尝试是使用一个非常简单的文件,该文件仅运行JSHint和Mocha,并具有监视模式。我的第一个结果是……很好……幻灭。

我遇到了几个问题,希望有办法解决它们:

  • 我意识到Gulp异步运行所有任务。如果我要等待任务完成,文档会告诉我使用回调,诺言或返回流。但是,我该如何使用gulp-mochagulp-jshint呢?这些插件支持吗?
  • 失败gulp-jshint并没有使构建失败。如果gulp-jshint失败,我如何告诉Gulp停止操作
  • 使用watchGulp入门指南中所述的模式Too many open files时,运行时会出错gulp有什么问题的想法吗?

(请注意,我故意没有在此处指定源代码,因为前两个问题是一般性问题,后一个问题是默认文件。)

有什么帮助吗?

古德古格·埃格森

关于任务依赖性,最简单的解决方案是从任务返回gulp流,并依赖该任务。

在下面的代码中,如果“服务器”任务未返回流,则它将异步运行,从而导致“服务”任务尝试使用不存在的文件运行服务器。

gulp.task('server', function () {
  return gulp.src('server/**/*.coffee')
      .pipe(coffeescript())
      .pipe(gulp.dest('./dist/'));
});

var expressServer;

gulp.task('serve', ['server'], function () {
  var apiServer = require('./dist/server');
  expressServer = apiServer(function (server) {
    server.use(livereload({
      port: livereloadport
    }));

  });

  expressServer.listen(serverport);

  //Set up your livereload server
  lrserver.listen(livereloadport);
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章