Настройка Airbnb ESLint с помощью React и Webpack
Я пытаюсь настроить линтинг со стандартами Javascript Airbnb в моем проекте React, он использует webpack.
обновлено с последними пакетами на основе комментариев.
"babel-eslint": "^6.1.2",
"eslint": "^3.2.2",
"eslint-config-airbnb": "^10.0.0",
"eslint-plugin-import": "^1.12.0",
"eslint-plugin-jsx-a11y": "^2.0.1",
"eslint-plugin-react": "^6.0.0",
"jshint": "^2.9.2",
"jshint-loader": "^0.8.3",
"json-loader": "^0.5.4",
у меня также есть настройка preloader в моей конфигурации webpack
preLoaders: [
{
test: /.jsx?$/,
loaders: ['eslint'],
// define an include so we check just the files we need
include: PATHS.app
}
],
и следующая настройка для запуска скрипта
"lint": "eslint . --ext .js --ext .jsx --ignore-path .gitignore --cache",
у меня тоже .eslintrc
файл, который имеет следующее
{
"extends": "airbnb",
"env": {
"node": true,
"es6": true
}
}
это дает мне следующую ошибка:
Configuration for rule "react/jsx-sort-props" is invalid:
Value "data["0"].shorthandLast" has additional properties.
если я удалить .eslintrc
файл, который я думал, может быть конфликтным, я получаю следующую ошибку:
error Parsing error: The keyword 'const' is reserved
затем следует ошибка npm, которая заставляет задачу выйти.
любая помощь будет оценили!
1 ответов
Итак, у меня была та же проблема, но я исправил эту ошибку, используя последнюю версию текущих пакетов:
"eslint": "3.2.2",
"eslint-config-airbnb": "10.0.0",
"eslint-loader": "1.5.0",
"eslint-plugin-import": "1.12.0",
"eslint-plugin-jsx-a11y": "2.0.1",
"eslint-plugin-mocha": "2.2.0",
"eslint-plugin-react": "6.0.0",
и, пожалуйста, сделайте это руководство:реагировать стиль кода с ESLint + Babel + Webpack
module: {
preLoaders: [
{
test: /\.jsx?$/,
loaders: ['eslint-loader'],
include: path.join(__dirname, 'src'),
exclude: path.join(__dirname, 'src/app/container')
}
],
...
eslint: {
configFile: './.eslintrc', //your .eslintrc file
emitWarning: true
}
.файл eslintrc
{
"extends": "airbnb"
}