Solución:
Deberías usar babel-eslint
con su configuración de eslint. Esto le permite lint TODO el código Babel válido con eslint. Actualmente, eslint no es compatible con todas las funciones de ES2020, pero aquí se propone un borrador.
Correr:
$ npm install babel-eslint --save-dev
# or
$ yarn add babel-eslint -D
Luego, en tu .eslintrc haz:
{
"parser": "babel-eslint"
}
ACTUALIZACIÓN 24/07/2020
El soporte se lanzó en la versión (v7.2.0) aquí.
ACTUALIZACIÓN 20/11/2020
NOTA: babel-eslint
es ahora @babel/eslint-parser
y se ha trasladado al monorepo de Babel.
$ npm install @babel/eslint-parser --save-dev
# or
$ yarn add @babel/eslint-parser -D
Entonces en tu .eslintrc
hacer:
{
parser: "@babel/eslint-parser",
}
Ya no necesitas @babel/eslint-parser
como [email protected]^7.5
ahora admite chanining opcional.
Ejecute lo siguiente para actualizar eslint dentro de su proyecto:
npm
npm install --save-dev [email protected]^7.5
hilo
yarn add -D [email protected]^7.5
Y luego, asegúrese de que su configuración sea la siguiente:
.eslintrc
{
"parserOptions": {
"ecmaVersion": 2020
}
}
.eslint.js
module.exports = {
"parserOptions": {
"ecmaVersion": 2020
}
}
Consulte https://eslint.org/blog/2020/07/eslint-v7.5.0-released#optional-chaining-support para obtener más información.