Eslint: Difference between revisions
Line 9: | Line 9: | ||
==== Configuration ==== | ==== Configuration ==== | ||
If you have an existing .eslintrc.js that works well in another project, JUST COPY IT to the root of the new vscode folder-based project. Otherwise, this will step you through it. Use the google format as a baseline: | If you have an existing .eslintrc.js that works well in another project, JUST COPY IT to the root of the new vscode folder-based project. Here's a good example: | ||
module.exports = { | |||
'env': { | |||
'browser': true, | |||
'es2020': true, | |||
}, | |||
'extends': ['eslint:recommended', 'google'], | |||
'parserOptions': { | |||
'ecmaVersion': 11, | |||
'sourceType': 'module', | |||
}, | |||
'rules': { | |||
// MDM they don't call me [Michael 4k] for nothing. I have to save SOME lint dignity. Is this too much to ask? | |||
'max-len': [1, {'code': 120}], | |||
}, | |||
}; | |||
Otherwise, this will step you through it. Use the google format as a baseline: | |||
cd myproject | cd myproject | ||
eslint --init | eslint --init | ||
==== vscode integration ==== | ==== vscode integration ==== | ||
* Get the eslint extension | * Get the eslint extension | ||
* Restart vscode and open a project with JS files. | * Restart vscode and open a project with JS files. | ||
* An eslint dialog should pop up, click Allow. Should be all you need. | * An eslint dialog should pop up, click Allow. Should be all you need. |
Revision as of 17:36, 2 September 2020
Intro
eslint is a Javascript linter and format-enforcer. Love it or die. I'm following Google's rules, with allowance for longer lines. My job uses a very strict set of rules.
Installation
Do NOT USE APT, it is available and seems to work but this is a node module. Don't be stupid, use npm. Note the mind-bogglingly-insane number of dependencies. Node world, you scare me...
# From anywhere... npm install -g eslint # From your project npm install --save-dev eslint-config-google
Configuration
If you have an existing .eslintrc.js that works well in another project, JUST COPY IT to the root of the new vscode folder-based project. Here's a good example:
module.exports = { 'env': { 'browser': true, 'es2020': true, }, 'extends': ['eslint:recommended', 'google'], 'parserOptions': { 'ecmaVersion': 11, 'sourceType': 'module', }, 'rules': { // MDM they don't call me [Michael 4k] for nothing. I have to save SOME lint dignity. Is this too much to ask? 'max-len': [1, {'code': 120}], }, };
Otherwise, this will step you through it. Use the google format as a baseline:
cd myproject eslint --init
vscode integration
- Get the eslint extension
- Restart vscode and open a project with JS files.
- An eslint dialog should pop up, click Allow. Should be all you need.