typescript/no-mixed-enums Pedantic
무엇을 수행합니까
이 규칙은 문자열 및 숫자 멤버를 모두 가진 열거형을 허용하지 않습니다.
왜 좋지 않은가요?
타입스크립트 열거형은 문자열, 숫자 또는 계산된 멤버를 가질 수 있습니다. 동일한 열거형 내에서 문자열과 숫자 멤버를 혼합하면 타입스크립트가 열거형을 컴파일하는 방식으로 인해 혼란스럽고 예기치 않은 런타임 동작이 발생할 수 있습니다.
예시
이 규칙에 대해 잘못된 코드 예시:
ts
enum Status {
Open = 1,
Closed = "closed",
}
enum Direction {
Up = "up",
Down = 2,
Left = "left",
Right = 4,
}이 규칙에 대해 올바른 코드 예시:
ts
// 모두 숫자
enum Status {
Open = 1,
Closed = 2,
}
// 모두 문자열
enum Direction {
Up = "up",
Down = "down",
Left = "left",
Right = "right",
}
// 자동 증가 숫자
enum Color {
Red,
Green,
Blue,
}사용 방법
이 규칙을 구성 파일 또는 명령줄 인터페이스에서 활성화하려면 다음을 사용하세요:
json
{
"rules": {
"typescript/no-mixed-enums": "error"
}
}bash
oxlint --type-aware --deny typescript/no-mixed-enums