I'd like to enforce curly braces for switch-cases in JS, possibly with ESLint or Prettier. Do you know of any related config, or if not that, then any other linting or formatting tool?
I tried the ESLint rule curly
set to "all"
, but it didn't compain about my curly-less switch-cases.
There is a switch-case ESLint plugin, but I haven't found such a rule in its doc, neither in its source code.
Example
Wrong:
switch (foo) {
case "bar":
return 1;
case "baz":
return 2;
default:
return 0;
}
Correct:
switch (foo) {
case "bar": {
return 1;
}
case "baz": {
return 2;
}
default: {
return 0;
}
}
The switch-braces
rule in the following eslint custom rules repo seems to be the one you are looking for:
https://github.com/justinanastos/eslint-plugin-justinanastos/blob/master/docs/rules/switch-braces.md
You can give it a try.