2017-06-13 17 views
12

ESLintのairbnb設定でwebpackとESLintを使用するReactプロジェクトを設定しようとしています。私はWebPACKのdevのサーバーにプロジェクトを起動しようとすると、私は次のエラーを取得する:ESLint eslint-config-airbnbで「Module build failed」エラーが発生しました

"Module build failed: Error: /react-template/node_modules/eslint-config-airbnb/rules/react-a11y.js: ESLint configuration is invalid: - Unexpected top-level property "ecmaFeatures"."

これはeslint-CONFIG-airbnb vを使用している15.0.1。。私はreact-a11y.jsファイルをチェックし、 "ecmaFeatures"というトップレベルのプロパティがあることを確認しました。私はESLint 2.0.0で知っています。ecmaFeaturesは現在parserOptionsプロパティの下にあるはずですが、それが.eslintrcファイルにのみ適用されるかどうかはわかりません。可能であればairbnbの設定を使用したいので、私は助けていただければ幸いです。 .eslintrcファイルを参考にしてください。

.eslintrc

{ 
    "parser": "babel-eslint", 
    "parserOptions": { 
    "ecmaVersion": 2016, 
    "sourceType": "module", 
    "ecmaFeatures": { 
     "jsx": true 
    } 
    }, 
    "env": { 
    "es6": true, 
    "browser": true, 
    "node": true, 
    "jest": true 
    }, 
    "extends": ["airbnb"] 
} 

答えて

20

私は解決策を考え出しました。

./node_modules/.bin/eslint-config-airbnb/rules/にあるreact-a11y.jsreact.jsを編集する必要があります。

ecmaFeatures: { 
    jsx: true 
}, 

とに置き換えます:

ecmaFeatures: { 
    jsx: true 
}, 
を、あなたが行くように良いことがあります:ちょうど削除

react.js
parserOptions: { 
    ecmaFeatures: { 
    jsx: true, 
    }, 
}, 

react-a11y.js除く。

また、私はエアブッブのレポを見ていて、ほぼ1ヶ月前にそれを修正したようですが、今日はeslint-config-airbnbを再インストールしたので、何が起こったのか分かりません。

ここにはreact-a11y.js diffreact.js diffへのリンクがあります。彼らはあなたが追加/削除する必要があるものを正確に示します。

+0

本当にリファクタリングする必要があると思いましたparserOptionsを使用します。ありがとう! – darin

+0

正しい答えとして私の鉱山をピックしますか? – gucciferXCIV

0

あなたJSONは有効ではありません。最初の "パーサー"の引用符がありません。

{ 
    "parser": "babel-eslint", 
    "parserOptions": { 
    "ecmaVersion": 2016, 
    "sourceType": "module", 
    "ecmaFeatures": { 
    "jsx": true 
} 
}, 
    "env": { 
    "es6": true, 
    "browser": true, 
    "node": true, 
    "jest": true 
}, 
"extends": ["airbnb"] 
} 
+0

これは申し訳ありませんが、実際には私がスタックオーバーフローでここに投稿したコピーの問題でしたが、ファイルには問題はありません。 -/ – darin

関連する問題