valid,invalid

関心を持てる事柄について

babel-eslint を使って非標準仕様でも lint できるようにする

Parsing error on ESLint

review-waiting-list-bot の実装中に以下のようなオブジェクトの分割代入するコードを書いたら eslint で parse error が起きるようになってしまった。

const { authors, ...conditions } = { authors: [], owner: '', repo: '' }
$ eslint .

/Users/ohbarye/.ghq/github.com/ohbarye/review-waiting-list-bot/src/App.js
  19:21  error  Parsing error: Unexpected token ..

✖ 1 problem (1 error, 0 warnings)

error Command failed with exit code 1.

Object Rest/Spread Properties はまだ stage 3 (2018-04-30 時点)。

また、標準化プロセスの中途にある仕様はこうなるのが正しいとのこと。

github.com

babel-eslint

stage n の仕様を利用したい場合は babel-eslint を使う模様。

devDependency として追加して

yarn add -D babel-eslint

.eslintrc.json に以下の行を追加する。

# .eslintrc.json
{
  "parser": "babel-eslint",
  ...
}

これで eslint コマンドが通るようになった。

環境

  • yarn v1.6.0
  • Node v8.3.0
  • eslint v4.4.1
  • babel-eslint v8.2.3