当前位置: 首页 > 知识库问答 >
问题:

如何在每次Gulpfile更改时重新启动Gulp?

楚意
2023-03-14

我正在开发一个gulpfile。能让它一变就重启吗?我正在Coffeescript中开发它。gulp是否可以监视gulpfile.coffee以便在保存更改时重新启动?

共有1个答案

白坚壁
2023-03-14

您可以创建一个任务来为gulpfile.js创建gulp.watch并简单地生成另一个gulp child_process。

var gulp = require('gulp'),
    argv = require('yargs').argv, // for args parsing
    spawn = require('child_process').spawn;

gulp.task('log', function() {
  console.log('CSSs has been changed');
});

gulp.task('watching-task', function() {
  gulp.watch('*.css', ['log']);
});

gulp.task('auto-reload', function() {
  var p;

  gulp.watch('gulpfile.js', spawnChildren);
  spawnChildren();

  function spawnChildren(e) {
    // kill previous spawned process
    if(p) { p.kill(); }

    // `spawn` a child `gulp` process linked to the parent `stdio`
    p = spawn('gulp', [argv.task], {stdio: 'inherit'});
  }
});

我使用yargs,以便在需要重新启动时接受运行的“主要任务”。因此,为了运行该操作,您可以调用:

gulp auto-reload --task watching-task

为了进行测试,可以调用touch gulpfile.jstouch a.css查看日志。

 类似资料:
  • 问题内容: 我正在开发一个。是否可以在更改后立即重启?我正在使用CoffeeScript开发它。保存更改后可以观看以便重新启动吗? 问题答案: 您可以创建一个这种意愿的,只是另一个一饮而尽child_process。 我曾经为了接受“主任务”而在需要重新启动时运行。因此,为了运行此程序,您可以调用: 要进行测试,请致电或查看日志。

  • 问题内容: 我有一个CI管道来构建我的android应用程序,并使用gitlab管道运行有条件的测试。我的gitlabRunner是一台ubuntu 16.04机器,在docker容器中运行每个构建。我有一个通过USB连接到gitlab运行程序的物理android设备。 最近,每次触发新的构建时,系统都会提示我允许android目标上的USB设备使用RSA指纹。问题在于指纹随着每个构建而变化。 我

  • 刚开始学习python flask框架,在阅读了一些教程之后,我发现对于我在(init.py)文件或任何python文件中所做的每一个更改,我们都需要重新启动服务器才能提交更改。嗯,我不明白,例如,如果一个用户正在使用支付页面(不一定是支付网关)浏览服务器上的一个页面(单服务器),如果服务器需要重新启动以进行后端的任何更改,会发生什么情况,有什么方法来处理这个问题,对不起,如果我的问题看起来不合适

  • 问题内容: 作为Java学习的一部分,我使用netbeans制作了一个jForm,其中包含三个jTextField,供用户输入一些数字,然后将这些数字的总和显示在另一个jTextField中。当然,这非常简单,但是我希望能够在没有任何按钮的情况下执行此操作。我不知道每次修改3个文本字段中的任何一个时如何“更新”总和。谁能帮我? 这是我的代码(该表单是在设计模式下使用netbeans完成的): 问题

  • 问题内容: 我在Windows 7上将Elasticsearch与angularjs和oracle一起使用,它的工作原理越来越好(感谢stackoverflower帮助)。我对Elasticsearch有一个问题:我文档中的元素数量正在增加,我不知道为什么/如何做。我的由Elasticsearch索引的oracle表包含12010个元素,现在我在弹性文档中得到了84070个元素(通常由curl _

  • 问题内容: 基本上,我在重新启动VM后会丢失通过SSH进入VM时所做的任何更改。我假设问题与停止VM时的错误有关。 但是,我可能只是在做一些愚蠢的事情。 我遵循的顺序如下(删除了docker徽标),您可以看到它在重新启动过程中丢失了示例目录。 跑步 Windows:8.1 的VirtualBox:4.3.12 r93733 Boot2Docker版本1.5.0,内部版本为master:a66bce