我如何放松Gulp-JSHint linting规则?

时间:2015-09-01 12:47:11

标签: javascript gulp jshint

我正在尝试将gulp-jshint'fail'报告器调整为仅基于在缩小时会破坏javascript代码的情况而失败。

例如,我发现导致问题最多的两种情况是

  • 缺少分号

  • 隐式声明变量

有什么方法可以创建一个gulp-jshint任务查找上述条件?

到目前为止,我有:

gulp.task('lint', function() {
    return gulp.src('src/main/webapp/static/js/**/**/**/*')
            .pipe(jshint())
            .pipe(jshint.reporter('fail'));
});

但这会引发许多对缩小不重要的问题

修改

我尝试过使用:

.pipe(jshint.reporter('default', {undef: true, asi: false}))

但这似乎没有改变任何东西

1 个答案:

答案 0 :(得分:0)

通过查看the docs,您要强制执行的条件如下:

  

undef:此选项禁止使用明确未声明的内容   变量。此选项对于发现泄漏和非常有用   错误的变量。

  

asi:此选项会禁止有关缺少分号的警告。那里   很多关于分号传播的FUD是由不少人传播的   社区。常见的误解是所有的分号都是必需的   时间(他们不是),他们是不可靠的。 JavaScript有规则   关于所有浏览器都遵循的分号,这取决于你   决定你是否应该在你的分号中使用分号   代码。

所以你应该

  1. undef = true
    1. asi = false