2013-11-23 3 views

ответ

54

Syntastic will use JSHint to check JavaScript syntaxif it's available (который я рекомендую по jslint).

JSHint supports es6 syntax with the esnext flag, который включает в себя поддержку синтаксиса модуля export и import.

Я предлагаю adding a .jshintrc file в свой проект, чтобы контролировать поведение JSHint (и, таким образом, Syntastic-х) для всего проекта:

{ 
    "esnext": true 
} 

Примечание: будьте осторожны, так как с помощью esnext флаг будет добавлена ​​поддержка все из es6's new language sytax что JSHint в настоящее время поддерживает, а не только синтаксис модуля.

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

{ 
    "esversion": 6 
} 
+1

Пробовал оба эти настройки. Ни работало – AdamW

18

Чтобы обойти эту проблему, я хотел бы предложить следующие шаги в соответствии с рекомендациями здесь: Configure 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'] 
+0

umm, все имеет смысл, за исключением последнего ... где вы помещаете 'let g: syntastic_javascript_checkers = ['eslint']'? извините, бит newb в zed/syntastic – unsynchronized

+0

в вашем .vimrc файле, который обычно находится '~/.vimrc'. Но у вас также могут быть локальные файлы .vimrc, поэтому они могут быть в другом месте. – mjwatts