2014-11-28 1 views
4

jshint를 실행할 때 다음 오류가 발생합니다.JSHint 및 밑줄 '_'과 함께 사용

line 4 col 5 Redefinition of '_'. 

코드가 불평합니다. 프로젝트

{ 
    "node": true, 
    "esnext": true, 
    "bitwise": true, 
    "eqeqeq": true, 
    "immed": true, 
    "latedef": "nofunc", 
    "newcap": true, 
    "noarg": true, 
    "regexp": true, 
    "undef": true, 
    "smarttabs": true, 
    "asi": true, 
    "debug": true, 
    "globals": { 
     "angular": false, 
     "_": false 
    } 
} 
+0

'Redefinition'은 어딘가에 이미 정의한 것을 나타냅니다. – mvuajua

+0

jshint 설정 파일이 파싱되고 있습니까? "someglobal"을 추가하십시오 : 전역에 true를 넣은 다음 var someglobal = 123; someglobal을 다시 정의하면 예외가 발생합니까? – Etai

답변

3

에서

var _ = require('lodash'); 

jshint 문제를 해결 한 것으로 보인다 다음에 .jshintrc 업데이트되었습니다.

{ 
    "node": true, 
    "browser": true, 
    "esnext": true, 
    "bitwise": false, 
    "camelcase": false, 
    "eqeqeq": true, 
    "immed": true, 
    "indent": 4, 
    "latedef": true, 
    "newcap": true, 
    "noarg": true, 
    "quotmark": "single", 
    "regexp": true, 
    "undef": true, 
    "unused": false,  
    "strict": true, 
    "trailing": true, 
    "smarttabs": true, 
    "globals": { 
     "jQuery": true, 
     "angular": true, 
     "console": true, 
     "AppConfig": true, 
     "$": true, 
     "_": true, 
     "moment": true, 
     "module": true, 
     "inject": true, 
     "browser": true, 
     "element": true, 

     "describe": true, 
     "before": true, 
     "beforeEach": true, 
     "after": true, 
     "afterEach": true, 
     "expect": true, 
     "it": true, 
     "by": true, 
     "chai": true 
    } 
} 

는 또한 .jshintrc 스펙

{ 
    "extends": ".jshintrc", 
    "globals": { 
    "describe": true, 
    "it": true, 
    "before": true, 
    "beforeEach": true, 
    "after": true, 
    "afterEach": true, 
    "chai": true, 
    "inject" : true 
    } 
} 
0

이가 underscore 또는 lodash 라이브러리 중 하나를 요구하면서 __ 이중 밑줄을 사용하는 것입니다 해결하기 위해 더 나은 (일반적으로 사용) 방법을 만들었습니다. 이 경우에만 jshintrc 파일을 변경할 필요가 없습니다.