Skip to content
← Back to rules

typescript/ban-ts-comment Pedantic

🛠️ An auto-fix is available for this rule for some violations.

무엇을 하는가

이 규칙은 코드베이스에서 허용하고자 하는 지시 주석의 종류를 설정할 수 있게 해줍니다.

왜 나쁜가

타입스크립트 컴파일러 오류를 억제하기 위해 타입스크립트 지시어를 사용하는 것은 전반적인 타입스크립트의 효과를 감소시킵니다.

예시

이 규칙에 대해 잘못된 코드 예시:

ts
if (false) {
  // @ts-ignore: 도달 불가능한 코드 오류
  console.log("hello");
}

구성

이 규칙은 다양한 타입스크립트 지시 주석이 어떻게 처리되어야 하는지 지정할 수 있도록 합니다.

각 지시어(@ts-expect-error, @ts-ignore, @ts-nocheck, @ts-check)에 대해 다음 옵션 중 하나를 선택할 수 있습니다:

  • true: 지시어를 완전히 금지하여 전체 코드베이스에서 사용을 방지합니다.
  • false: 제한 없이 지시어를 허용합니다.
  • "allow-with-description": 설명이 그 지시어 사용 이유를 설명하는 경우에만 지시어를 허용합니다. 설명은 minimumDescriptionLength로 지정된 최소 길이를 충족해야 합니다.
  • { "descriptionFormat": "<regex>" }: 설명이 지정된 정규 표현식 패턴과 일치할 경우에만 지시어를 허용합니다.

예시:

json
{
  "ts-expect-error": "allow-with-description",
  "ts-ignore": true,
  "ts-nocheck": { "descriptionFormat": "^: TS\\d+ because .+$" },
  "ts-check": false,
  "minimumDescriptionLength": 3
}

이 규칙은 다음 속성을 가진 구성 객체를 수락합니다:

minimumDescriptionLength

type: integer

기본값: 3

allow-with-description와 함께 지시어를 사용할 때 요구되는 최소 설명 길이.

ts-check

@ts-check 지시어의 처리 방법.

ts-expect-error

@ts-expect-error 지시어의 처리 방법.

ts-ignore

@ts-ignore 지시어의 처리 방법.

ts-nocheck

@ts-nocheck 지시어의 처리 방법.

사용 방법

이 규칙을 설정 파일이나 명령줄 인터페이스를 통해 활성화하려면 다음과 같이 사용할 수 있습니다:

json
{
  "rules": {
    "typescript/ban-ts-comment": "error"
  }
}
bash
oxlint --deny typescript/ban-ts-comment

참고 자료