版本

擴展 ESLint 的方法

ESLint 具有高度可插拔性和可配置性。您可以使用多種方法擴展 ESLint 的功能。

此頁面說明擴展 ESLint 的方法,以及這些擴展如何組合在一起。

外掛程式

外掛程式可讓您將自己的 ESLint 自訂規則和自訂處理器添加到專案中。您可以將外掛程式發佈為 npm 模組。

外掛程式非常有用,因為您的專案可能需要一些 eslint 核心套件中未包含的 ESLint 設定。例如,如果您使用像 React 這樣的前端 JavaScript 程式庫或像 Vue 這樣的框架,這些工具的一些功能需要超出 ESLint 核心規則範圍的自訂規則。

通常,外掛程式會與 ESLint 的設定配對,將外掛程式的一組功能應用於專案。您也可以在外掛程式中包含設定。

例如,eslint-plugin-react 是一個 ESLint 外掛程式,其中包含專門針對 React 專案的規則。這些規則包括強制執行 React 元件生命週期方法的一致使用,以及在呈現動態列表時需要使用 key 屬性。

要了解有關建立可以包含在外掛程式中的擴展的更多資訊,請參閱以下文件

要了解有關將這些擴展捆綁到外掛程式中的更多資訊,請參閱外掛程式

可分享的設定

ESLint 可分享的設定是您可以專案中使用的預先定義的 ESLint 設定。它們將規則和其他設定捆綁在一個 npm 套件中。您可以將任何可以放入設定檔中的內容放入可分享的設定中。

您可以獨立發佈可分享的設定,也可以作為外掛程式的一部分發佈。

例如,一個受歡迎的可分享設定是 eslint-config-airbnb,它包含各種規則以及一些 解析器選項。這是一組 ESLint 的規則,旨在匹配 Airbnb JavaScript 風格指南所使用的風格指南。透過使用 eslint-config-airbnb 可分享設定,您可以自動在專案中強制執行 Airbnb 風格指南,而無需手動設定每個規則。

要了解有關建立可分享設定的更多資訊,請參閱分享設定

自訂格式化工具

自訂格式化工具會取得 ESLint 程式碼檢查結果,並以您定義的格式輸出結果。自訂格式化工具可讓您以最適合您需求的格式顯示程式碼檢查結果,無論是特定的檔案格式、特定的顯示樣式,還是針對特定工具最佳化的格式。只有在內建格式化工具不符合您的使用案例時,才需要建立自訂格式化工具。

例如,自訂格式化工具 eslint-formatter-gitlab 可用於在 GitLab 程式碼品質報告中顯示 ESLint 結果。

要了解有關建立自訂格式化工具的更多資訊,請參閱自訂格式化工具

自訂解析器

ESLint 自訂解析器是一種擴展 ESLint 的方法,以支援程式碼中新語言功能或自訂語法的程式碼檢查。解析器負責取得您的程式碼並將其轉換為抽象語法樹 (AST),然後 ESLint 可以分析和程式碼檢查該樹。

ESLint 附帶一個內建的 JavaScript 解析器 (Espree),但自訂解析器允許您程式碼檢查其他語言或擴展內建解析器的程式碼檢查功能。

例如,自訂解析器 @typescript-eslint/parser 擴展了 ESLint 以程式碼檢查 TypeScript 程式碼。

與其他擴展類型不同,自訂解析器無法包含在外掛程式中。

要了解有關建立自訂解析器的更多資訊,請參閱自訂解析器

變更語言