2017-01-09 34 views
22

Mam wiele plików javascript i zdefiniowałem pewną globalną zmienną w pliku, który ładuje się przed innymi. W konsekwencji wszystkie pliki załadowane po pierwszym mają dostęp do zmiennej globalnej. Jednak ESLint pokazuje zmienną globalną jako "nie zdefiniowano". Nie chcę zmieniać zasad ESLint i chciałbym znaleźć elegancki sposób na pozbycie się tych komunikatów o błędach. Jakaś wskazówka? DziękiZmienne globalne w JavaScript i ESLint

+2

'->' http://eslint.org/docs/user-guide/configuring#specifying-globals. Dokumentacja ESLint jest świetnym IMO, powinieneś spojrzeć na to. –

Odpowiedz

22

Nie sądzę, hackowanie reguł ESLint dla pliku jest świetny pomysł.

Powinieneś raczej zdefiniować globals w .eslintrc lub package.json.

Dla .eslintrc:

"globals": { 
    "angular": true 
} 

Dla package.json:

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

PS

dokumentacja Reading jest cnotą obowiązkowe dla deweloperów

+4

Warto zauważyć, że zmienna globalna została ustawiona na "true", jeśli można przypisać zmienną do czegoś innego i "fałsz", jeśli nie należy jej ponownie przypisywać. – RedSparr0w

18

Możesz dodać globalnych albo na plik lub w twojej konfiguracji. Jeśli nie chcesz zmieniać konfiguracji, musisz dodać używane globale w każdym pliku.

Aby określić globalnych użyciu komentarz wewnątrz twojego pliku JavaScript, należy użyć następującego formatu:

/* global var1, var2 */ 

ten definiuje dwie zmienne globalne, var1 i var2. Jeśli chcesz opcjonalnie określić, że te zmienne globalne nie powinny być zapisywane (tylko do odczytu), a następnie można ustawić każdy z fałszywą flagą:

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

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

+0

Dziękuję, że działa! –