即使使用'use strict'语句,如何使用对象“angular”?

时间:2015-07-26 17:13:48

标签: javascript angularjs gulp jshint

我正在使用gulp-jshint,这使我在每个文件中添加'use strict'指令,因此我不能使用我的app.js文件中定义的全局对象emApp:

var emApp = angular.module('emApp');

但是,我看到jshint对角度对象一无所知。我想知道为什么会这样,以及如何使用我自己的emApp对象做同样的事情。

2 个答案:

答案 0 :(得分:2)

使用cardPoints.add(1, new Card(1, "Ace of Spades"); .... cardPoints.add(14, new Card(1, "Ace of Hearts"); cardPoints.add(15, new Card(2, "2 of Hearts"); ,您必须分配到'use strict'(在顶层)或this.emApp(也在函数内工作),不需要window.emApp

虽然每种模块化方法的目的(以及Angular)也是为了最大限度地减少全局变量的使用,所以

var

在您使用该模块的每个地方都是一件好事。

答案 1 :(得分:0)

有两个选项可以告诉JSHint有关全局变量的信息: 1)如果你想告诉特定文件中的全局变量,请在文件的开头使用该指令:

/* globals myVariable: false */

2)如果要为项目中的所有文件声明全局,可以在.jshintrc文件中添加此指令,如下所示:

"globals": {
   "myVariabe": true
}

有关使用JSHint的全局变量的更多信息请阅读:http://jshint.com/docs/

P.S。问题中提到的角度对象在.jshintrc文件中定义