【问题标题】:jshint throwing TypeError in gulp task when it is clearly definedjshint 在明确定义时在 gulp 任务中抛出 TypeError
【发布时间】:2016-01-08 17:59:45
【问题描述】:

我正在尝试对一些 JS 文件运行 jshint,但由于某种原因,我遇到了一个我不明白的错误。

//(node v4.2.2)
var jshint = require('jshint');
gulp.task('hint', function(){
  return gulp.src('./app/**/*.js')
    .pipe(jshint())
    .pipe(jshint.reporter('default'));
});

[11:40:09] 开始“提示”...

[11:40:09] 'hint' 在 7.08 毫秒后出错

[11:40:09] 类型错误:jshint 不是函数

我一直在查看releases page,看起来 2.9.0 存在一些问题,但是在两个候选版本以及恢复到早期版本时,我都遇到了同样的错误。几周前,这项任务运行良好,但似乎有什么东西坏了。像这样记录jshint,给我下面的字符串。

gulp.task('testhint', function(){
  console.log(jshint)
});

//{ JSHINT: { [Function] addModule: [Function], data: [Function], jshint: [Circular] } }

我也尝试删除并重新安装node_modules,但无济于事。为什么 gulp 说 jshint 不是函数?

【问题讨论】:

    标签: javascript node.js gulp task jshint


    【解决方案1】:

    来自documentation

    NOTE: as of 2.0 jshint must to be installed with gulp-jshint.

    将语句改为:

    var jshint = require('gulp-jshint');

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-06-29
      • 1970-01-01
      • 2018-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-12
      相关资源
      最近更新 更多