問題
こんな感じに書きたい。ただ、これはデフォルトのままだとindentルールに引っかかります。
switch (1) {
case 1: {...}
case 2: {...}
default: {...}
}
こうしろと言ってくるんです。
switch (1) {
case 1: {...}
case 2: {...}
default: {...}
}
解決
どうしても上で書きたい場合は、indentルールのオプションの{SwitchCase: <ネストの深さ>を指定します。なんとデフォルトが{SwitchCase: 0}だった為に警告されたわけです。
つまり、.tslintrcをこんな感じにすれば上の方法で書けるようになります。
"rules": {
"indent": ["error", 2, {"SwitchCase": 1}],
}
eslint-config-prettier と eslint-plugin-prettier を使ってる場合
もし、prettier/prettierルールを使っている場合でネストを0のまま使っていると、
Insert '··' (prettier/prettier)Replace '······' with '········' (prettier/prettier)
こんな感じの意味不明なエラー文に怒られてハマります。
これはswitch-case文のインデントを1にすれば直ります😇