I'm current developing an API on Node 12.14.1 and using Eslint to help me write the code. Unfortunately it does not allow me to set static class properties as shown below:
class AuthManager {   static PROP = 'value' }   The following error is given: Parsing error: Unexpected token =eslint
Static class properties are already supported on JS and on Node.
How can this rule be disable?
I also have the following .eslintrc.json file:
{   "env": {       "es6": true,       "node": true   },   "extends": "eslint:recommended",   "globals": {       "Atomics": "readonly",       "SharedArrayBuffer": "readonly"   },   "parserOptions": {       "ecmaVersion": 2018,       "sourceType": "module"   } } 
                ESLint with its default parser does not support class fields syntax for now. You can solve the problem by changing the configured parser to babel-eslint.
npm install --save-dev babel-eslint   // eslintrc.json {   "parser": "babel-eslint",   ... }   Eslint's default parser, Espree, does not support class fields because that syntax is currently stage 3, and that it is decided that only stage 4 proposals are to be supported in Espree.
ESLint v8 now supports static class properties natively: https://eslint.org/blog/2021/10/eslint-v8.0.0-released
parserOptions ecmaVersion should be set to 13, 2022, or "latest" to enable the support.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With