Gulp.js,保存文件时监视任务运行两次

2022-01-12 00:00:00 javascript gulp

鉴于我的 gulpfile.js 中的以下代码,每次我保存或更改文件时,任务都会运行两次而不是一次,这是为什么呢?我只想让它运行一次.

Given the following piece of code from my gulpfile.js, everytime I save or change a file, the task runs twice instead of one single time, why is that? I just want it to run one time.

var gulp = require('gulp');

gulp.task('default', function() {

  gulp.watch('server/**/*.js', function(){
    console.log('This runs twice everytime I change/save a javascript file located at server/**/*.js');
  }); 

});

我对 grunt 和名为 grunt-contrib-watch 的插件也有同样的体验.

I have also experienced the same with grunt and the plugin called grunt-contrib-watch.

推荐答案

似乎这个问题的答案是使用的编辑器 Coda 2 的一个功能.根据这里的一些评论和多个编辑器的测试,似乎 Coda 2 保存了一个临时文件或类似文件,这会导致 gulp watch 函数运行两次.

Seems like the answer to this question is a feature of the editor that was used, Coda 2. Based on some of the comments here and testing with multiple editors, it seems like Coda 2 saves a temporary file or similar and that causes the gulp watch function to be run twice.

我在使用 Coda 2 时没有找到可行的解决方案,最终切换到 Sublime Text 3.

I have not found a viable solution to this when using Coda 2, ended up with switching to Sublime Text 3.

相关文章