# max-classes-per-file

强制每个文件的最大类数

包含多个类的文件通常会导致可导航性较差且结构不良的代码库。最佳实践是将每个文件限制为单一职责。

# 规则详情

该规则强制每个文件只能包含特定数量的类,不能更多。

此规则的错误代码示例:

/*eslint max-classes-per-file: "error"*/

class Foo {}
class Bar {}

此规则的正确代码示例:

/*eslint max-classes-per-file: "error"*/

class Foo {}

# 选项

此规则可以使用对象或数字进行配置。

如果选项是一个对象,它可能包含以下一项或两项:

  • ignoreExpressions:一个布尔选项(默认为 false),用于忽略类表达式。
  • max:一个数字选项(默认为 1),用于指定最大类数。

例如:

{
    "max-classes-per-file": ["error", 1]
}
{
    "max-classes-per-file": [
        "error",
        { "ignoreExpressions": true, "max": 2 }
    ]
}

此规则的正确代码示例,其中 max 选项设置为 2

/* eslint max-classes-per-file: ["error", 2] */

class Foo {}
class Bar {}

此规则的正确代码示例,其中 ignoreExpressions 选项设置为 true

/* eslint max-classes-per-file: ["error", { ignoreExpressions: true }] */

class VisitorFactory {
    forDescriptor(descriptor) {
        return class {
            visit(node) {
                return `Visiting ${descriptor}.`;
            }
        };
    }
}
Last Updated: 5/13/2023, 8:55:38 PM