Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/477.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当gulp jshint失败时,无法使gulp notify弹出错误消息_Javascript_Node.js_Gulp_Jshint_Gulp Notify - Fatal编程技术网

Javascript 当gulp jshint失败时,无法使gulp notify弹出错误消息

Javascript 当gulp jshint失败时,无法使gulp notify弹出错误消息,javascript,node.js,gulp,jshint,gulp-notify,Javascript,Node.js,Gulp,Jshint,Gulp Notify,所以,如果我们一整天都在做新的FE工作流,主要的想法是通过一个观察者来运行一些任务,我们将有一个IDE和一个窗口,浏览器在每次发生变化时都会刷新(SCS、js、html等) 因此,如果一切顺利,我们将什么也看不到:浏览器将重新加载,我们将继续工作 但是,我们希望对错误使用gulp notify,因此如果出现错误,将出现通知程序弹出窗口,此时,您可以检查控制台并查看错误 失败时的sass任务示例: 对于我们的样式任务,一切都很好,但对于JS文件,我无法完成这项任务 主要是,我不能让gulp js

所以,如果我们一整天都在做新的FE工作流,主要的想法是通过一个观察者来运行一些任务,我们将有一个IDE和一个窗口,浏览器在每次发生变化时都会刷新(SCS、js、html等)

因此,如果一切顺利,我们将什么也看不到:浏览器将重新加载,我们将继续工作

但是,我们希望对错误使用gulp notify,因此如果出现错误,将出现通知程序弹出窗口,此时,您可以检查控制台并查看错误

失败时的sass任务示例:

对于我们的样式任务,一切都很好,但对于JS文件,我无法完成这项任务

主要是,我不能让gulp jshint按我想要的方式工作

这将是这样的:你保存你的js文件,如果失败,弹出窗口会出现,当你看到这个,你去控制台,你会看到jshint的输出

有人能帮我吗

这是我的(非工作)解决方案:

gulp.task( 'js-hint', function() {
    return gulp.src( config.source )
        .pipe( plumber() )
        .pipe( jshint( config.jsHintRules ) )
        .pipe( jshint.reporter( 'jshint-stylish' ) )
        .on('error', notify.onError( { message: 'JS hint fail' } ) );
});
显然,我在概念上有问题,所以,有人能帮我找到正确的方向吗

注意,我只想一直发出相同的消息“JS提示失败”

然后,控制台(感谢jshint Style)将为我们提供更多信息

此外,这将是一个观察者。 在JS提示传递之后,将执行更多任务,比如borwserify,所以重要的是,如果它停止,“等待”直到我完成修复,然后继续

谢谢

PS,Im使用:

大口喝3.8.10 吞咽jshint 1.8.6 吞咽通知2.0.1


在OSX 10.9.4上,gulp中的
错误
事件仅在流中发生错误时才会触发

要将错误报告程序添加到
gulp jshint
中,请通过
fail
报告程序传递错误报告程序:

 gulp.task('js-hint', function() {
      return gulp.src(config.source)
        .pipe(plumber())
        .pipe(jshint( config.jsHintRules))
        .pipe(jshint.reporter('jshint-stylish'))
        .pipe(jshint.reporter('fail'))
        .on('error', notify.onError({ message: 'JS hint fail'}));
  });

谢谢。这让我走上了正确的道路。下面是github问题,现在展开->