Javascript 및 ESLint의 전역 변수


102

여러 자바 스크립트 파일이 있고 다른 파일보다 먼저로드되는 파일에 전역 변수를 정의했습니다. 결과적으로 첫 번째 파일 이후에로드 된 모든 파일은 전역 변수에 액세스 할 수 있습니다. 그러나 ESLint는 전역 변수를 "정의되지 않음"으로 표시합니다. ESLint의 규칙을 변경하고 싶지 않으며 이러한 오류 메시지를 제거하는 우아한 방법을 찾고 싶습니다. 단서가 있습니까? 감사


4
-> eslint.org/docs/user-guide/configuring#specifying-globals . ESLint의 문서는 훌륭한 IMO이므로 한 번 살펴 보셔야합니다.
Felix Kling

답변:


115

파일 당 ESLint 규칙을 해킹하는 것은 좋은 생각이 아니라고 생각합니다.

또는 globals에서 정의해야합니다 ..eslintrcpackage.json

.eslintrc의 경우 :

"globals": {
    "angular": true
}

대상 package.json:

"eslintConfig": {
    "globals": {
        "angular": true
    }
}

추신

문서를 읽는 것은 개발자에게 필수적인 미덕입니다.

https://eslint.org/docs/user-guide/configuring#specifying-globals


7
true변수를 다른 것에 할당 할 수 false있고 재 할당해서는 안되는 경우 전역 변수를로 설정하는 것이 좋습니다.
RedSparr0w

6
문서를 연결하는 것은 stackoverflow 답변에서 높이 평가되는 미덕입니다.
Romain G

아래 링크가 이미있는 @RomainG) 그러나 나는 당신을 위해 하나를 추가 할 것
V-앤드류

87

파일 또는 구성에서 전역을 추가 할 수 있습니다. 구성을 변경하지 않으려면 모든 파일에 사용 된 전역을 추가해야합니다.

JavaScript 파일 내의 주석을 사용하여 전역을 지정하려면 다음 형식을 사용하십시오.

/* global var1, var2 */

이것은 두 개의 전역 변수 var1var2. 이러한 전역 변수가 기록되지 않도록 (읽기 전용) 선택적으로 지정하려면 false 플래그를 사용하여 각각을 설정할 수 있습니다.

/* global var1:false, var2:false */

http://eslint.org/docs/2.0.0/user-guide/configuring#specifying-globals

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.