Таинственная ошибка синтаксического анализа ESLint
В строке 4 следующего кода ESLint выдает сообщение об ошибке:
Неожиданный токен =
Мне интересно, почему это так? Код работает правильно. Что я делаю неправильно?
import { Component, PropTypes } from 'react';
export default class MainApp extends Component {
static propTypes = {
children: PropTypes.any.isRequired
}
componentWillMount() {
require('./styles/main.styl');
}
render() {
return (
<div>
{this.props.children}
</div>
);
}
}
2 ответа
Решение
У вас не может быть свойств внутри классов, у вас могут быть только методы.
Ссылка: http://www.2ality.com/2015/02/es6-classes-final.html
Я смог это исправить:
1) Установить бабел-эслинт
$ npm i --save-dev babel-eslint
ИЛИ ЖЕ
$ yarn add babel-eslint --dev
2) Настройте ESLint для использования babel-eslint в качестве парсера
Просто добавь "parser": "babel-eslint",
в ваш файл.eslintrc.
Пример.eslintrc для использования babel-eslint
и конфигурация airbnb с некоторыми пользовательскими правилами:
{
"parser": "babel-eslint",
"extends": "airbnb",
"rules": {
"arrow-body-style": "off",
"no-console": "off",
"no-continue": "off"
}
}