eslint/default-case 제한
작동 방식
모든 switch 문에서 default 경우를 포함하도록 강제하며, 구성된 주석으로 명시적으로 표시된 경우는 제외합니다.
왜 나쁜가요?
default 경우가 없으면 누락이 의도적인 것인지 실수인지 명확하지 않습니다. default를 추가하거나 특별한 주석을 넣으면 코드의 의도가 더 명확해지고 오류를 줄일 수 있습니다.
default 경우가 없을 경우 마지막 경우 뒤에 // no default를 선택적으로 포함할 수 있습니다. 주석은 원하는 대로 대소문자를 사용할 수 있으며, 예를 들어 // No Default처럼 작성할 수 있습니다.
예시 구성:
json
{
"default-case": ["error", { "commentPattern": "^skip\\sdefault" }]
}예시
이 규칙에 잘못된 코드 예시:
js
switch (foo) {
case 1:
break;
}이 규칙에 올바른 코드 예시:
js
switch (a) {
case 1:
break;
default:
break;
}
switch (a) {
case 1:
break;
// no default
}구성
이 규칙은 다음 속성을 가진 구성 객체를 수용합니다.
commentPattern
type: string
default 경우가 의도적으로 생략되었음을 표시하는 주석을 감지하기 위한 정규표현식 패턴입니다.
기본값: no default.
{ "commentPattern": "^skip\\sdefault" } 옵션과 함께 이 규칙에 잘못된 코드 예시:
js
switch (a) {
case 1:
break;
// no default
}{ "commentPattern": "^skip\\sdefault" } 옵션과 함께 이 규칙에 올바른 코드 예시:
js
switch (a) {
case 1:
break;
// skip default
}사용 방법
이 규칙을 활성화하려면 구성 파일 또는 CLI에서 다음과 같이 사용할 수 있습니다:
json
{
"rules": {
"default-case": "error"
}
}bash
oxlint --deny default-case