如果我通过 NPM 全局安装 JSLint,有没有办法在我的应用程序的当前范围内或在我的系统上全局禁用某些规则?
主要问题是悬空下划线问题。我的意思是,当我使用 __dirname 时,主要出现在 node.js 中,但我相信它也会出现在 underscorejs 中。我已经用 jslint 指令忽略了它,但我认为在我使用下划线的每个文件上都需要这样做有点烦人。
就此而言,我是否需要放置“使用严格”;在每个文件的顶部?
如果我通过 NPM 全局安装 JSLint,有没有办法在我的应用程序的当前范围内或在我的系统上全局禁用某些规则?
主要问题是悬空下划线问题。我的意思是,当我使用 __dirname 时,主要出现在 node.js 中,但我相信它也会出现在 underscorejs 中。我已经用 jslint 指令忽略了它,但我认为在我使用下划线的每个文件上都需要这样做有点烦人。
就此而言,我是否需要放置“使用严格”;在每个文件的顶部?
考虑使用构建工具进行 lint 配置和自动化。当您的项目增长时,无论如何您都需要一个。
对于 node.js 项目,我推荐使用 grunt。将 grunt 安装到您的项目中:
npm install grunt
Grunt 有一个内置的 lint 任务(https://github.com/cowboy/grunt/blob/master/docs/task_lint.md)。
现在创建一个grunt.js
文件并在那里配置 linting:
module.exports = function(grunt) {
grunt.initConfig({
lint: {
all: [
'app.js',
'modules/*.js'
]
},
jshint: {
options: {
nomen: false
}
}
});
grunt.registerTask('default', 'lint');
};
请注意如何轻松添加多个文件和文件模式并将选项全局应用于所有这些。
现在你可以通过调用来运行 grunt:
grunt
请注意,如果您使用jshint,nomen
默认情况下是关闭的(http://www.jshint.com/options/)。