Подтвердить что ты не робот

Синтаксический жалоб на синтаксис модуля ES6

Мне нравится синтаксис для javascript, но я использую новый tranpiler модуля ES6, и синтаксис недоволен этими типами утверждений:

import Typeahead from './lib/components/ember-typeahead';

В любом случае, я могу сохранить синтаксическую тишину в отношении этого типа утверждения?

4b9b3361

Ответ 1

Syntastic будет использовать JSHint для проверки синтаксиса JavaScript если он доступен (который я рекомендую по jslint).

JSHint поддерживает синтаксис es6 с флагом esnext, который включает поддержку синтаксиса модуля export и import.

Я предлагаю добавить файл .jshintrc в ваш проект для управления поведением JSHint (и, следовательно, Syntastic) для всего проекта:

{
  "esnext": true
}

Примечание. Будьте осторожны, так как использование флага esnext добавит поддержку всех es6 новых языков sytax, которые в настоящее время поддерживает JSHint, а не только синтаксис модуля.

Примечание: esnext теперь устарело в пользу esversion.

{
  "esversion": 6
}

Ответ 2

Чтобы обойти это, я предлагаю следующие шаги, как рекомендовано здесь: Настроить Vim for React:

Установите eslint и babel-eslint:

npm install -g eslint babel-eslint

Создайте локальную конфигурацию .eslintrc в вашем проекте или глобальную конфигурацию ~/.eslintrc:

{
    "parser": "babel-eslint",
    "env": {
        "browser": true,
        "node": true
    },
    "settings": {
        "ecmascript": 6
    },
    "rules": {
        "strict": 0 // you can add more rules if you want
    }
}

Наконец, настройте syntastic на использование eslint:

let g:syntastic_javascript_checkers = ['eslint']