javascript - Gulp Watch 未调用关联的 gulp 任务

标签 javascript gulp gulp-watch

因此,在(长时间)休息后,我将回到个人项目,并且我将回到事情的流程中。让我印象深刻的一件事是我的观察者没有工作。例如,如果我调用 gulp watch-for-jshint ,我希望每当我修改 JS 文件时 JSHint 都会发生更改——无论是根文件 (gulp.js) 还是我的客户端应用程序文件之一 (./client-app/js/controllers/register.js)。那并没有发生。我可以看到 watch 正在启动,但当我更改文件时它永远不会调用 JSHint!

有人知道出了什么问题或如何诊断吗?据我所知,我的语法是正确的...并且因为(出于测试目的)我直接调用 watch-for-jshint,所以我应该避免从未真正调用我的观察者的常见陷阱。

简化的 gulp 文件:

var gulp = require('gulp'),
  clean = require('gulp-clean'),
  jshint = require('gulp-jshint'),
  notify = require('gulp-notify'),
  watch = require('gulp-watch'),

gulp.task('jshint', function(){
  console.log("Running JSHint");
  return gulp.src(['*.js', 'client-app/**/*.js'], ['jshint'])
    .pipe(jshint({"moz":true}))
    .pipe(jshint.reporter('default'))
    .pipe(jshint.reporter('fail'))
    .on('error', notify.onError({ sound: "Funk" }));
});

gulp.task('watch-for-jshint', function(){
  return watch(['*.js', './client-app/**/*.js'], ['jshint']);
});

我删去了很多无关的任务,但上面的内容应该是所有相关的。

最佳答案

自然地,发布后 5 分钟,我注意到我的语法与许多问题所使用的语法之间存在差异。大多数人都在使用 gulp.watch,我只是遵循 gulp-watch NPM module 中找到的语法。仅使用watch的页面。

不...完全确定为什么一个有效而另一个无效;奇怪的。似乎新版本不应该工作,因为它没有引用 gulp-watch 模块。

关于javascript - Gulp Watch 未调用关联的 gulp 任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40373233/

相关文章:

javascript - gulp-run-sequence 没有完成任务

javascript - 正则表达式查找并用 gulp/node 替换并在替换中使用查找字符串的一部分?

git - 使用 git 部署到 Azure 时,如何在我的 asp.net core 项目中运行 gulp.js?

javascript - 打包json脚本运行多个环境变量

javascript - 使用 JavaScript 隐藏/删除 ul 类中的文本

javascript - 我的 gulp.js 文件没有在浏览器上更新我的 css

一口哈巴狗 : compile new on changed files only (case with "includes" and "extends")

node.js - 使用 gulp-sftp 仅上传更改的文件

javascript - 为什么我的 jQuery 函数会触发两次?

javascript - Chrome Javascript 控制台 - 使用 console.log(obj) 引用对象输出?