it-swarm.com.ru

eslint: error Ошибка синтаксического анализа: ключевое слово «const» зарезервировано

Я получаю эту ошибку от ESLint:

error  Parsing error: The keyword 'const' is reserved

из этого кода:

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

Я попытался удалить node_modules и переустановить все пакеты npm (как было предложено здесь ), но безрезультатно.

132
opike

По умолчанию ESLint проверяет синтаксис ES5. Вы захотите переопределить последнюю поддерживаемую версию JavaScript.

Попробуйте добавить файл .eslintrc в ваш проект. Внутри него:

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

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

Надеюсь, это поможет.

Правка: Я также нашел этот пример .eslintrc , который может помочь.

173
iamjpg

Я использовал .eslintrc.js и добавил следующий код.

module.exports = {
    "parserOptions": {
        "ecmaVersion": 6
    }
};
4
John Pluto Solutions

У меня была такая же проблема с этой частью моего кода:

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
},

...
0
Marcos Sevilla

вы также можете добавить это встроенное вместо конфигурации, просто добавьте его в тот же файл, прежде чем добавлять свои собственные отключить вещи

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

мой случай был отключить файл и eslint-disable не работали только для меня

/* eslint-env es6 */
/* eslint-disable */
0
yousef