
自首次發布以來,規則一直是 ESLint 的核心。我們經歷了規則的幾個開發週期,首先嘗試複製 JSHint 規則,然後在最佳實踐被揭露時創建 ECMAScript 6 規則,並努力與 JSCS 規則達到功能對等,等等。現在,在 ESLint 首次創建近三年後,我們在核心中擁有超過 200 條規則,並且每週都會持續收到新的規則提案。
當 ESLint 剛開始時,我們希望擁有多種規則,既能捕捉潛在錯誤,又能規範程式碼風格。我們從未打算涵蓋每個人想要的一切,而是希望涵蓋 JavaScript 開發人員面臨的最常見問題,並將其餘的留給自訂規則。這就是為什麼 ESLint 從最初的版本就支援 自訂規則 的原因:我們知道我們永遠無法為世界提供人們想要的所有規則,因此唯一的真正解決方案是讓每個人都能夠創建自己的規則。
經過深思熟慮,我們決定,只有當團隊認為不接受新規則會弊大於利時,我們才會接受將新規則納入 ESLint。例如,我們致力於幫助人們從其他 linter 轉移到 ESLint,因此我們仍將考慮添加使過渡更容易的規則。同樣地,如果規則標記了潛在的嚴重或難以識別的錯誤,我們也會考慮它。否則,從現在開始,我們將建議人們使用 plugins 實作自己的規則。
社群撰寫了一些關於編寫您自己的規則的優秀文章和教學。以下是一些幫助您入門的資源
- 使用 ESLint 的專案特定 Lint 規則
- 使用 ESLint 維護 JavaScript 程式碼品質
- ESLint - 可自訂的 JavaScript Linting 工具
- 為 ESLint 創建自訂規則
ESLint 的未來有很多美好的發展,我們希望您能藉此機會更多地了解編寫和發布您自己的規則。