Przypisuję właściwość do globalnego obiektu okna, ale po uruchomieniu eslint otrzymuję:
„okno” nie jest zdefiniowane
Widzę to tutaj w dokumentach eslint :
poniżej definiuje okno jako zmienną globalną dla kodu, która nie powinna wyzwalać testowanej reguły:
valid: [
{
code: "window.alert()",
globals: [ "window" ]
}
]
Próbowałem dodać coś takiego do pliku package.json, aby eslint zezwalał „window” jako zmiennej globalnej, ale muszę robić coś złego. Z dokumentów wynika, że być może będę musiał zrobić coś takiego w osobnym pliku, ale czy istnieje sposób na zdefiniowanie dozwolonych zmiennych globalnych bezpośrednio w pliku package.json?
global
, musisz upewnić się, że"node": true
jest ustawiony w"env"
konfiguracji.Odpowiedzi:
Jest wbudowane,
environment: browser
które obejmujewindow
.Przykład
.eslintrc.json
:Więcej informacji: http://eslint.org/docs/user-guide/configuring.html#specifying-environments
Zobacz także
package.json
odpowiedź chevin99 poniżej.źródło
.eslintrc
niepackage.json
/* eslint-env browser */
Znalazłem go na tej stronie: http://eslint.org/docs/user-guide/configuring
W pakiecie.json działa to:
źródło
Dodaj
.eslintrc
w katalogu głównym projektu.źródło
.eslintrc.json
może być.eslintrc
Twój plik .eslintrc.json powinien zawierać poniższy tekst.
W ten sposób ESLint wie o twoich zmiennych globalnych.
źródło
Wiem, że nie prosi o wersję wbudowaną . Ale ponieważ to pytanie ma prawie 100 tys. Odwiedzin i wpadłem tutaj, szukając tego, zostawię to tutaj następnemu programistowi:
Upewnij się, że ESLint nie działa z
--no-inline-config
flagą (jeśli to nie brzmi znajomo, prawdopodobnie dobrze jest jechać). Następnie zapisz to w pliku kodu (dla zachowania przejrzystości i konwencji, jest napisane na wierzchu pliku, ale będzie działać wszędzie):To informuje ESLint, że twoje środowisko pracy jest przeglądarką, więc teraz wie, jakie rzeczy są dostępne w przeglądarce i odpowiednio się dostosowuje.
Istnieje wiele środowisk i możesz zadeklarować więcej niż jedno w tym samym czasie, na przykład:
Jeśli prawie zawsze korzystasz z określonych środowisk, najlepiej ustawić go w pliku konfiguracyjnym ESLinta i zapomnieć o tym.
Z ich dokumentów :
Oprócz środowisk możesz sprawić, że zignoruje wszystko, co chcesz. Jeśli ostrzega cię przed używaniem,
console.log()
ale nie chcesz być o tym ostrzegany, po prostu wstaw:Możesz zobaczyć listę wszystkich reguł , w tym zalecanych reguł dla najlepszych praktyk kodowania .
źródło
Jeśli używasz Angulara , możesz to zrobić za pomocą:
źródło