Skip to content

unicorn/no-static-only-class Pedantic

⚠️🛠️️ A dangerous auto-fix is available for this rule.

What it does

Disallow classes that only have static members.

Why is this bad?

A class with only static members could just be an object instead.

Examples

Examples of incorrect code for this rule:

javascript
class A {
    static a() {}
}

Examples of correct code for this rule:

javascript
class A {
    static a() {}

    constructor() {}
}
javascript
const X = {
    foo: false,
    bar() {}
};
javascript
class X {
    static #foo = false; // private field
    static bar() {}
}

How to use

To enable this rule using the config file or in the CLI, you can use:

json
{
    "rules": {
        "unicorn/no-static-only-class": "error"
    }
}
bash
oxlint --deny unicorn/no-static-only-class

References

Released under the MIT License.