Kod VS z es6


106

W moim kodzie pojawia się błąd lintingu 'import' is only available in ES6 (use 'esversion: 6').

Wszystko, co jest związane z es6, generuje błąd. Nie jestem pewien, co muszę skonfigurować, aby to działało.

Odpowiedzi:


216

Dodaj plik o nazwie .jshintrcdo swojego projektu i wewnątrz tego pliku wpisz:

{
    "esversion": 6
}

Jak widać tutaj:

wprowadź opis obrazu tutaj

Pełną dokumentację jshintopcji można znaleźć tutaj: http://jshint.com/docs/options


4
jshint.com/docs/options/#esversion dla osób poszukujących dokumentacji.
— Jeremy Larter

5
Powinno to zostać dodane automatycznie.
— Xaqron

Wygląda na to, że czasami musisz dodać tę linię "moz": true
— kinsley kajiva

7
To nie zadziałało dla mnie (wersja vscode 1.37.1, OS X). Przejdź do preferencji rozszerzenia -> wybierz Edytuj w settings.json Do dodania JSON: "jshint.options": { "esversion": 6 } Nie zapomnij przecinka w poprzednim wierszu!
— sijpkes

1
Z ~/settings.jsonmojego doświadczenia wynika, że ​​jedyne miejsce, w którym można to dodać . Ustawienia na poziomie projektu nie mają na to wpływu. To absurd, to nie jest domyślne. Naprawdę trudno jest dowiedzieć się, jak to naprawić, a tymczasem wrażenia użytkownika z JavaScriptem w VS Code są wrogie. Super irytujące. Powinien domyślnie obsługiwać ES6 +. Dlaczego by tego nie zrobił?
— rjurney

96

Edycja: Dodałem sposób, aby włączyć es6, jeśli używasz ESLint zamiast JSHint, a także aktualizować zrzuty ekranu, ponieważ VSCode zmienił się od czasu mojej oryginalnej odpowiedzi.

Metoda JSHint:

Jeśli używasz JSHint, możesz dodać do swoich ustawień:

"jshint.options":{
    "esversion":6
}

Metoda ESLint:

Jeśli używasz ESLint, możesz dodać następujące ustawienia do swoich ustawień:

"eslint.options": {
    "env":{
        "es6":true
    },
    "parserOptions": {
        "ecmaVersion": 6 // or 7,8,9
    }
}

Dokumentacja konfiguracji ESLint

Jak zaktualizować ustawienia

  1. W VS Code przejdź do settings

Ustawienia VS Code

  1. Po wyświetleniu ustawień zobaczysz sekcje ustawień:

Karty ustawień użytkownika i obszaru roboczego

Zwróć uwagę, że istnieją dwie sekcje, w których możesz dostosować swoje ustawienia, Ustawienia użytkownika i Ustawienia obszaru roboczego

Ustawienia użytkownika To miejsce, w którym powinieneś zastosować dowolne ustawienia globalne, które chcesz, dla każdego projektu, nad którym będziesz kiedykolwiek pracować.

Ustawienia obszaru roboczego To miejsce, w którym możesz dokonać zmian ustawień, które powinny być zastosowane tylko do bieżącego projektu.

W moim przypadku, ponieważ wiem, że tylko niektóre z moich projektów mogą korzystać z ES6, muszę mieć wskazówkę o błędzie, aby ostrzec mnie, jeśli używam ES6 moich projektów innych niż ES6 ... więc ustawiam to tylko na moje ustawienia obszaru roboczego

Jeśli jednak wiesz, że wszystko, co kodujesz w VS Code, będzie projektem ES6, zapisz krok i dodaj go do ustawień użytkownika .

  1. Kliknij opcję Użytkownik / Obszar roboczy w zależności od preferencji. Wyszukaj JSHint lub ESLint (cokolwiek używasz). Kliknij dowolny link Edytuj w settings.json , nie ma znaczenia, który z nich.

Edytuj w settings.json

  1. Dodaj odpowiednie ustawienia w zależności od tego, czy używasz JSHint, czy ESLint:

JSHint

Dodawanie ustawienia JSHint

ESLint

Dodawanie ustawienia ESLint


6
To była świetna odpowiedź i +1 za brak konieczności tworzenia dodatkowego pliku w katalogach projektu ... Zrzuty ekranu również bardzo pomocne, bardzo dziękuję!
— twknab

Jest to również lepsze, ponieważ można to zrobić automatycznie dla nowych projektów, zamiast tworzyć nowe pliki lub po prostu przechowywać je w jednym obszarze roboczym.
— Jan Sila

2
Z jakiegoś powodu nie działa na mnie. Wypróbowałem to zarówno w ustawieniach użytkownika, jak i przestrzeni roboczej
— LondonGuy,

1
Dziękuję bardzo za szczegółowe wyjaśnienie, było to naprawdę bardzo pomocne.
— Ketan Ramteke

22

Możesz dodać "esversion": 6do jshint.options w ustawieniach użytkownika.

{
  "jshint.options": {
    "esversion": 6
  }
}

4

Aby uzupełnić doskonałe sugestie, które zostały już przesłane, możesz również ustawić to na podstawie pliku po pliku, dodając tę ​​linię ze znakami ucieczki (i podobną do innych ustawień jshint) na początku pliku.

// jshint esversion:6

Właściwie możesz go dodać w dowolnym miejscu, ale wpływa to tylko na kolejny kod, umożliwiając włączanie i wyłączanie ustawień, jeśli desperacko chcesz zrobić coś dziwnego.


0

Upewnij się, że wykonujesz powyższe konfiguracje za pomocą json, ale także usuwasz / wyłączasz jshintrozszerzenie dla obszaru roboczego, jeśli używasz eslinti odwrotnie.,


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.