当我使用Grunt-jshint时,我遇到了这个问题。
我有一个Angular应用程序,我将我的控制器或指令定义为:
angular.module('myApp').controller('beerFormController', beerForm_controller);
beerForm_controller.$inject = ['$scope'];
function beerForm_controller($scope) {
var vm_main = this;
vm_main.smsCgHijo = 'some text here';
}
这是我开始执行grunt任务后的错误:
Running "jshint:files" (jshint) task
Linting app/js/directives/beerForm/beerForm_controller.js...ERROR
[L7:C29] 'beerForm_controller' was used before it was defined.
有人可以帮助我吗?
什么是问题? ...谢谢
答案 0 :(得分:1)
正如消息所述,问题在于您在源中出现beerForm_controller
函数之前已经使用过它。这实际上不是问题,因为函数声明被提升但它违反了默认的JSHint样式指南。
您可以通过将latedef
选项设置为nofunc
来告诉JSHint允许该样式。