版本

max-classes-per-file

強制每個檔案的最大類別數量

包含多個類別的檔案通常會導致程式碼庫結構不良且難以瀏覽。最佳實踐是讓每個檔案僅限於單一職責。

規則詳情

此規則強制規定每個檔案可能僅包含特定數量的類別,且不得超過。

此規則的錯誤程式碼範例

在 Playground 中開啟
/*eslint max-classes-per-file: "error"*/

class Foo {}
class Bar {}

此規則的正確程式碼範例

在 Playground 中開啟
/*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

在 Playground 中開啟
/* eslint max-classes-per-file: ["error", 2] */

class Foo {}
class Bar {}

此規則的正確程式碼範例,其中 ignoreExpressions 選項設定為 true

在 Playground 中開啟
/* eslint max-classes-per-file: ["error", { ignoreExpressions: true }] */

class VisitorFactory {
    forDescriptor(descriptor) {
        return class {
            visit(node) {
                return `Visiting ${descriptor}.`;
            }
        };
    }
}

版本

此規則在 ESLint v5.0.0-alpha.3 中引入。

資源

變更語言