eslint/no-useless-constructor 의심스러움
작동 방식
클래스의 동작을 변경하지 않고 안전하게 제거할 수 있는 생성자를 허용하지 않습니다.
왜 문제가 되는가?
ES2015에서는 클래스 생성자가 명시되지 않은 경우 기본 생성자를 제공합니다. 따라서 비어 있는 생성자 또는 부모 클래스 생성자로 단순히 위임하는 생성자를 제공하는 것은 불필요합니다.
WARNING
주의: 이 린트 규칙은 부모 생성자의 가시성을 변경하기 위한 목적뿐인 생성자도 경고합니다. 왜냐하면 이 규칙은 부모 생성자가 public, protected, 또는 private인지 여부를 판단하기 위해 타입 정보를 가지지 않기 때문입니다.
예시
이 규칙에 잘못된 코드 예시:
javascript
class A {
constructor() {}
}
class B extends A {
constructor(...args) {
super(...args);
}
}이 규칙에 올바른 코드 예시:
javascript
class A {}
class B {
constructor() {
doSomething();
}
}
class C extends A {
constructor() {
super("foo");
}
}
class D extends A {
constructor() {
super();
doSomething();
}
}사용 방법
이 규칙을 설정 파일이나 CLI에서 활성화하려면 다음을 사용할 수 있습니다:
json
{
"rules": {
"no-useless-constructor": "error"
}
}bash
oxlint --deny no-useless-constructor