我的團隊正在重構我們的代碼庫,並且我們使用ESLint來識別具有任何lint錯誤的文件。我們目前有一個具有極高閾值的.eslintrc文件,並且在我們對代碼庫中的某些文件進行改進時正在縮小這些閾值。例如,我們的「max-statements」閾值設置爲99個語句,我們的目標是將其降至20個語句。所以我們逐漸將閾值從99降低到98到97等,直到我們看到一個棉絨誤差出現。然後我們知道下一個要重構的文件。爲同一個ESLint規則包含錯誤和警告?
問題是,這種策略並不能止血。爲了繼續上面的例子,我們假設一個新的控制器被引入,它有45條語句。這個數字低於我們目前的閾值(因爲我們的瓶頸文件有99個語句),但高於我們的20個語句的目標閾值。
理想情況下,我們希望發現任何違反我們目前閾值的lint錯誤的錯誤,以及針對lint錯誤的警告違反了我們的目標閾值。這會給我們一個所有違規文件的清單,並首先對最嚴重違規的文件進行分類。例如:
// inside .eslintrc
....
"rules": {
"max-statements": [2, 99],
"max-statements": [1, 20]
}
....
在這種情況下,我們會看到有20多個陳述的任何文件警告和錯誤超過99個語句每個文件。
我試着實現上述配置,但正如我擔心的那樣,第一個「max-statements」規則被第二個覆蓋。
有什麼辦法可以實現我所描述的嗎?