版本

合併設定檔

在許多情況下,您不會從頭開始編寫 ESLint 設定檔,而是會結合預定義和可共享的設定,以及您自己的覆寫,來為您的專案建立設定。本頁說明您可以用於在設定檔中合併設定的一些模式。

套用設定物件

如果您從另一個模組匯入物件,在大多數情況下,您可以直接將該物件插入到設定檔的匯出陣列中。例如,您可以使用 JavaScript 的建議規則設定,方法是匯入 recommended 設定並在您的陣列中使用它

// eslint.config.js
import js from "@eslint/js";
import { defineConfig } from "eslint/config";

export default defineConfig([
    js.configs.recommended,
    {
        rules: {
            "no-unused-vars": "warn"
        }
    }
]);

在這裡,js.configs.recommended 預定義設定會先套用,然後另一個設定物件會為 no-unused-vars 新增所需的設定。

將設定套用到檔案子集

您可以通過建立一個帶有 files 鍵的新物件,並使用 extends 鍵從設定物件合併其餘屬性,來將設定物件僅套用到檔案子集。例如

// eslint.config.js
import js from "@eslint/js";
import { defineConfig } from "eslint/config";

export default defineConfig([
    {
        files: ["**/src/safe/*.js"],
        plugins: {
            js
        },
        extends: ["js/recommended"]
    }
]);

在這裡,js/recommended 設定物件僅套用於符合 "**/src/safe/*.js" 模式的檔案。

套用設定陣列

如果您從另一個模組匯入陣列,請直接將該陣列插入到您的匯出陣列中。這是一個範例

// eslint.config.js
import exampleConfigs from "eslint-config-example";
import { defineConfig } from "eslint/config";

export default defineConfig([

    // insert array directly
    exampleConfigs,

    // your modifications
    {
        rules: {
            "no-unused-vars": "warn"
        }
    }
]);

在這裡,exampleConfigs 可共享設定會先套用,然後另一個設定物件會為 no-unused-vars 新增所需的設定。這相當於按順序插入 exampleConfigs 的個別元素,例如

// eslint.config.js
import exampleConfigs from "eslint-config-example";
import { defineConfig } from "eslint/config";

export default defineConfig([

    // insert individual elements instead of an array
    exampleConfigs[0],
    exampleConfigs[1],
    exampleConfigs[2],

    // your modifications
    {
        rules: {
            "no-unused-vars": "warn"
        }
    }
]);

將設定陣列套用到檔案子集

您可以通過使用 extends 鍵,來將設定陣列僅套用到檔案子集。例如

// eslint.config.js
import exampleConfigs from "eslint-config-example";
import { defineConfig } from "eslint/config";

export default defineConfig([
    {
        files: ["**/src/safe/*.js"],
        extends: [exampleConfigs],
        rules: {
            "no-unused-vars": "warn"
        }
    }
]);

在這裡,exampleConfigs 中的每個設定物件僅套用於符合 "**/src/safe/*.js" 模式的檔案。

變更語言