【发布时间】:2013-11-23 17:14:38
【问题描述】:
我正在使用带有 grunt 的 jshint 并使用一些内联配置。我对以下内容感到困惑。如果我只在下面的代码上运行 jshint。
/* jshint undef: false */
var app = foo;
/* jshint undef: true */
我希望这不会返回错误代码 W117,说明 foo 未定义,但出于某种原因它确实如此。如果我像这样省略最后一条语句,它会起作用:
/* jshint undef: false */
var app = foo;
虽然这不是我想要的行为。我只希望 jshint 忽略这一行的 undef 警告。
我的选择如下:
options:{
curly: true,
eqeqeq: true,
eqnull: true,
browser: true,
undef: true,
unused: 'vars',
globals: {
jQuery: false,
$: false
}
},
我做错了什么?
【问题讨论】:
-
你在后面的代码中使用
foo吗?如果是这样,您遇到了同样的问题,并且每次都必须打开和关闭。在没有看到您的代码的情况下,我的猜测是您想调用foo一个全局的,以便它缺乏初始化不会影响代码。但是,再一次,更多的代码是更好的。如果它在 just 你上面的 sn-p 上很无聊,那就太奇怪了。你能确认一下吗? -
是的,我最终称它为全球性的。这是解决这个问题的正确方法。我确实在其他地方给 foo 打过电话,但一定没有注意到。
标签: javascript jslint jshint