在jshint中使用下划线

时间:2014-03-04 15:56:05

标签: javascript angularjs jshint

我正在使用下划线库。

运行jshint时我得到了这个:

[L38:C38] W117: '_' is not defined.
      var approvedAndRequstedCount = _.countBy(products, function(obj) {

警告:任务“jshint:all”失败。使用--force继续。

这是我的配置文件:

{
  "node": true,
  "browser": true,
  "esnext": true,
  "bitwise": true,
  "camelcase": false,
  "curly": true,
  "eqeqeq": true,
  "immed": true,
  "indent": 2,
  "latedef": true,
  "newcap": true,
  "noarg": true,
  "quotmark": "single",
  "regexp": true,
  "undef": true,
  "unused": true,
  "strict": true,
  "trailing": true,
  "smarttabs": true,
  "globals": {
    "angular": false
  }
}

我猜这是全局选项的问题?我试图添加“_”:假但没有运气。有什么想法吗?

1 个答案:

答案 0 :(得分:47)

我也有这个问题。

我安装了下划线:bower install -save underscore,它在代码中运行良好。不幸的是,jshint没有找到这个参考。您必须在配置文件like .jshintrc中告诉jshint您的全局变量:

{
  …
  "globals": {
    "angular": false,
    "_": false
  }
}

如果您仍然遇到此问题,则需要确保在执行jshint时包含下划线。我建议将-W117设置为true。对这些错误进行处理可能会导致更多错误。