no-unused-private-class-members

禁止未使用的私有类成员

已声明且未在代码中任何位置使用的私有类成员很可能是由于重构不完整而导致的错误。这样的类成员会占用代码中的空间,并可能导致读者混淆。

规则详情

此规则报告未使用的私有类成员。

  • 如果从不读取私有字段或方法的值,则认为该私有字段或方法未使用。
  • 如果从不访问(读取或写入)私有访问器,则认为它未使用。

此规则的错误代码示例:

/*eslint no-unused-private-class-members: "error"*/

class Foo {
    #unusedMember = 5;
}

class Foo {
    #usedOnlyInWrite = 5;
    method() {
        this.#usedOnlyInWrite = 42;
    }
}

class Foo {
    #usedOnlyToUpdateItself = 5;
    method() {
        this.#usedOnlyToUpdateItself++;
    }
}

class Foo {
    #unusedMethod() {}
}

class Foo {
    get #unusedAccessor() {}
    set #unusedAccessor(value) {}
}

SbTLXZ+fJgXXAZ/O+c4yAQFCJ6GxNfVYGiUUWnNvPMaio7qroiPJZIdAsmtruK7x

/*eslint no-unused-private-class-members: "error"*/

class Foo {
    #usedMember = 42;
    method() {
        return this.#usedMember;
    }
}

class Foo {
    #usedMethod() {
        return 42;
    }
    anotherMethod() {
        return this.#usedMethod();
    }
}

class Foo {
    get #usedAccessor() {}
    set #usedAccessor(value) {}
    
    method() {
        this.#usedAccessor = 42;
    }
}

何时不使用

CVz0XOsYopnc030mUuMvefcvHF0iWSmW+Fe7a4+BBSGAg2Ik9EqvuAk9u5rYVWSbv0W3QKsrTTU2hHue2FMbCjnWjsiBQerwpRo3WxKb2/LB2QzxLH0c4FkVkGxbYDsrtnHwNAbD3Zt9xkcwWkn6ww==