eslint/no-dupe-class-members 정확성
작동 방식
중복된 클래스 멤버를 허용하지 않습니다.
이 규칙은 TypeScript 코드에서는 비활성화할 수 있습니다. 왜냐하면 TypeScript 컴파일러가 이 검사를 강제하기 때문입니다.
왜 문제가 될까요?
클래스 멤버에서 동일한 이름의 선언이 존재할 경우, 마지막 선언이 다른 선언을 무시하고 덮어쓰게 됩니다. 이로 인해 예기치 않은 동작이 발생할 수 있습니다.
예시
이 규칙에 부적절한 코드 예시:
javascript
class A {
foo() {
console.log("foo");
}
foo = 123;
}
let a = new A();
a.foo(); // Uncaught TypeError: a.foo is not a function이 규칙에 적절한 코드 예시:
javascript
class A {
foo() {
console.log("foo");
}
}
let a = new A();
a.foo();사용 방법
구성 파일이나 명령줄 인터페이스를 통해 이 규칙을 활성화하려면 다음을 사용할 수 있습니다:
json
{
"rules": {
"no-dupe-class-members": "error"
}
}bash
oxlint --deny no-dupe-class-members