神秘的ESLint解析错误

adr*_*nmc 13 javascript reactjs eslint react-jsx

在以下代码的第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>
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

Pau*_*est 19

我能够解决这个问题:

1)安装babel-eslint

$ 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"
  }
}
Run Code Online (Sandbox Code Playgroud)