84

In my project we have some global variables that work as containers:

MyProject.MyFreature.someFunction = function() { ... }

So then I use that script across the site and JSLint / JSHint complains about that:

'MyProject' is not defined

I know that I can go to every JavaScript file and add the comment /*global MyProject*/ on top of it. But I'm looking a way to define that comment in some sort of config file so I don't have to go file by file adding this comment.

Some kind on option in the config/jshint.yml would be nice.

4

3 回答 3

86

For JSHint you can create .jshintrc to your project directory with

{
  "globals": { "MyProject": true }
}
于 2013-07-17T20:48:28.417 回答
60

This is only for globals

/* global MyProject */

In your case you need

/* exported MyProject */
于 2015-10-03T08:48:31.243 回答
4

JSLint has a textarea below the options that says predefine global variables here in it. Just add the variable names in there before running the check.

JSHint doesn't allow you to add global variables, but you can uncheck the When variable is undefined option to suppress that warning.

The JSHint library also has parameters for globals, if you run it as a library . . . details in here: http://jshint.com/docs/

于 2013-07-17T20:41:29.533 回答