eslint: error Error de análisis: la palabra clave 'const' está reservada

188

Recibo este error de ESLint:

error  Parsing error: The keyword 'const' is reserved

de este código:

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

Intenté eliminar node_modulesy reinstalar todos los paquetes npm (como se sugiere aquí ), pero fue en vano.

opike
fuente

Respuestas:

301

ESLint se predetermina a la verificación de sintaxis de ES5. Deberá anular la última versión de JavaScript bien compatible.

Intenta agregar un .eslintrcarchivo a tu proyecto. Dentro de eso:

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

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

Espero que esto ayude.

EDITAR: También encontré este ejemplo.eslintrc que podría ayudar.

iamjpg
fuente
10

Usé .eslintrc.js y agregué el siguiente código.

module.exports = {
    "parserOptions": {
        "ecmaVersion": 6
    }
};
Khachornchit Songsaen
fuente
6

También puede agregar esta línea en lugar de la configuración, solo agréguela al mismo archivo antes de agregar sus propias cosas de desactivación

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

mi caso fue deshabilitar un archivo y eslint-disable no funcionaba solo para mí

/* eslint-env es6 */
/* eslint-disable */
yousef
fuente
3

Tuve este mismo problema con esta parte de mi código:

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

El mismo error, const es una palabra reservada.

La cuestión es que hice el .eslintrc.js desde el enlace que proporcionó en la actualización y todavía recibí el mismo error. También, me sale un error de análisis en el .eslintrc.js: Unexpected token ':'.

Justo en esta parte:

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

...
Marcos Sevilla
fuente
2

Si usa Visual Code, una opción es agregar esto al archivo settings.json:

"eslint.options": {
    "useEslintrc": false,
    "parserOptions": {
        "ecmaVersion": 2017
    },
    "env": {
        "es6": true
    }
}
Bjørnar Hvidsten
fuente
0

En mi caso, no .eslintrcpude encontrar el archivo, así que copié de node_modules / .bin a root.

fuddin
fuente