eslint:エラー解析エラー:キーワード 'const'は予約されています


188

ESLintからこのエラーが発生します。

error  Parsing error: The keyword 'const' is reserved

このコードから:

const express = require('express');
const app = express();
const _ = require('underscore');

私はnode_modulesすべてのnpmパッケージを削除して再インストールしようとしましたが(ここで提案されています)、役に立ちませんでした。

回答:


301

ESLintのデフォルトはES5構文チェックです。サポートされている最新バージョンのJavaScriptにオーバーライドする必要があります。

.eslintrcプロジェクトにファイルを追加してみてください。その中:

{
    "parserOptions": {
        "ecmaVersion": 2017
    },

    "env": {
        "es6": true
    }
}

うまくいけば、これが役立ちます。

編集:私も役立つかもしれないこの例.eslintrcを見つけました。



6

構成の代わりにインラインで追加することもできます。独自の無効化要素を追加する前に、同じファイルに追加するだけです。

/* eslint-env es6 */
/* eslint-disable no-console */

私のケースはファイルを無効にし、eslint-disableは私だけでは機能しませんでした

/* eslint-env es6 */
/* eslint-disable */

3

私のコードのこの部分でこれと同じ問題がありました:

const newComment = {
    dishId: dishId,
    rating: rating,
    author: author,
    comment: comment
};
newComment.date = new Date().toISOString();

同じエラー、constは予約語です。

問題は、更新で指定したリンクから.eslintrc.jsを作成しても、同じエラーが発生することです。また、.eslintrc.js:で解析エラーが発生しますUnexpected token ':'

この部分で:

"env": {
"browser": true,
"node": true,
"es6": true
},

...

2

Visual Codeを使用する場合、1つのオプションはこれをsettings.jsonファイルに追加することです。

"eslint.options": {
    "useEslintrc": false,
    "parserOptions": {
        "ecmaVersion": 2017
    },
    "env": {
        "es6": true
    }
}

0

私の場合、.eslintrcファイルを見つけることができなかったので、node_modules / .binからrootにコピーしました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.