Я только что увидел, что вы внесли изменения ("РЕДАКТИРОВАТЬ 2") в свой ответ.
В любом случае, я хотел бы посоветовать вам именно этот вариант:
"indent": ["error", 4, { "SwitchCase": 1 }]
Почему вы считаете это " недопустимым правилом для отступа "?
Согласно документам , это правильный способ установить желаемый отступ для операторов switch
.
«SwitchCase» (по умолчанию: 0) обеспечивает уровень отступа для предложений case в операторах switch.
Документы также содержат [четыре примера]:
- Отступ 2 пробелов с SwitchCase, установленным в 0, не будет сдвигать предложения регистра в отношении операторов switch.
- Отступ 2 пробела с SwitchCase, установленным в 1, будет сдвигать предложения case с 2 пробелами относительно операторов switch.
- Отступ 2 пробелов с SwitchCase, установленным в 2, будет сдвигать предложения case с 4 пробелами относительно операторов switch.
- Отступ вкладки с SwitchCase, установленным в 2, будет сдвигать предложения регистров с 2 вкладками относительно операторов switch.
Это всего лишь примеры, тот факт, что целевой объект опции не указан, не означает, что он неверен. И действительно, это кажется правильным: ESLint Demo .
Ваш вариант использования фактически включен в документы версии 2.0.0 (нет привязки для прямой ссылки, извините, если это последний кодовый блок документа):
/*eslint indent: [2, 4, {"SwitchCase": 1}]*/
switch(a){
case "a":
break;
case "b":
break;
}