我有一些
JavaScript文件应该在假定一个Node环境时使用,而其他应该在假定浏览器环境时使用.如何使用不同的JSHint选项lint这些文件?这是我的出发点:
module.exports = function (grunt) { grunt.initConfig({ lint: { files: [ "grunt.js",// Node environment "lib/**/*.js",// browser environment ],},jshint: { options: { browser: true,// define globals exposed by modern browsers? es5: true,// code uses ECMAScript 5 features? node: false,// define globals in Node runtime? },globals: {},}); grunt.registerTask("default","lint"); };
解决方法
实际上,它很简单:
https://github.com/gruntjs/grunt/blob/master/docs/task_lint.md#per-target-jshint-options-and-globals
// Project configuration. grunt.initConfig({ lint: { src: 'src/*.js',grunt: 'grunt.js',tests: 'tests/unit/**/*.js' },jshint: { // Defaults. options: {curly: true},// Just for the lint:grunt target. grunt: { options: {node: true},globals: {task: true,config: true,file: true,log: true,template: true} },// Just for the lint:src target. src: { options: {browser: true},globals: {jQuery: true} },// Just for the lint:tests target. tests: { options: {jquery: true},globals: {module: true,test: true,ok: true,equal: true,deepEqual: true,QUnit: true} } } });