跳到主要內容

選項

共享的選項

您可以在 設定物件 中使用其中一些選項。

allowEmptyInput

CLI 旗標:--allow-empty-input, --aei

當 glob 模式與任何檔案不符時,Stylelint 就不會擲回錯誤。

configFile

CLI 旗標:--config, -c

包含 設定物件 的 JSON、YAML 或 JS 檔案路徑。

如果您不希望 Stylelint 搜尋設定檔,請使用此選項。

路徑應為絕對路徑或相對於您的處理程序執行目錄 (process.cwd()) 的路徑。

CLI 旗標:--config-basedir

定義「extends」、「plugins」和「customSyntax」的相對路徑所相對應的目錄絕對路徑。僅在這些值為相對路徑時需要。

fix

CLI 旗標:--fix

針對規則報告的問題,自動修復(如果可能)。

對於具有標準語法的 CSS,Stylelint 使用 postcss-safe-parser 修復語法錯誤。

使用 Node.js API 時,自動修復的程式碼會作為傳回物件中 code 屬性的值提供。

如果來源包含

  • 範圍停用註解,例如 /* stylelint-disable color-named */,則範圍規則報告的任何問題都不會在來源中的任何地方自動修復
  • 非範圍停用註解,即 /* stylelint-disable */,來源的全部內容都不會自動修復

此限制會在 問題 #2643 中追蹤。

customSyntax

CLI 旗標:--custom-syntax

指定要對程式碼使用的自訂語法。

有許多造型語言,從 SCSS 等 CSS 語言擴充功能到完全不同的符號,例如 CSS-in-JS 物件。

這些造型語言也可以嵌入在其他語言中。例如

  • HTML <style> 標籤
  • markdown 圍欄
  • JavaScript 範本字串

此選項允許 Stylelint 將這些轉換成類似 CSS 的內容,而 CSS 是

  • 支撐所有其他造型語言的語言
  • Stylelint 內建規則最能理解的語言

此選項應為解析成匯出 PostCSS 相容語法 的 JS 模組的字串。字串可以是模組名稱(例如 my-module)或 JS 檔案路徑(例如 path/to/my-module.js)。

如果您想要檢查兩種或更多不同的語言,您可以將 customSyntaxoverrides 設定屬性結合使用。

使用 Node.js API 時,customSyntax 選項也可以接受 語法物件。Stylelint 將 parse 屬性視為必要值。此外,Stylelint 支援以 ESM 編寫的語法模組。

注意事項

Stylelint 無法保證核心規則適用於自訂語法。

formatter

CLI 旗標:--formatter, -f | --custom-formatter

指定格式化程式以格式化您的結果。

選項有

  • compact - 產生類似於 ESLint 的精簡格式化程式的輸出
  • github - 透過 GitHub Actions 的工作流程命令 產生訊息
  • json (Node API 的預設值) - 產生可供其他工具使用的 JSON
  • string (CLI 的預設值) - 產生人類可讀的字串
  • tap - 產生 Test Anything Protocol 輸出
  • unix - 產生類似 C 編譯器的訊息,以便 Emacs 的「編譯模式」等工具可以建立超連結
  • verbose - 延伸 string 以包含已檢查檔案的清單和每條規則的統計資料

formatter Node.js API 選項也可以接受函式或 Promise 函式,而 --custom-formatter CLI 旗標則接受 JS 檔案的路徑(檔案系統路徑或依賴項),該檔案匯出一個函式。這兩種情況下的函式都必須符合 開發人員指南 中所述的簽章。

cache

CLI 旗標:--cache

儲存已處理檔案的結果,以便 Stylelint 只針對已變更的檔案執行。預設情況下,快取儲存在 process.cwd() 中的 ./.stylelintcache 中。

啟用此選項可以大幅提升 Stylelint 的速度,因為只會檢查已變更的檔案。

如果您使用 cache 執行 Stylelint,然後在沒有 cache 的情況下執行 Stylelint,Stylelint 會刪除 .stylelintcache,因為我們必須假設第二個命令使 .stylelintcache 無效。

cacheLocation

CLI 旗標:--cache-location

快取位置檔案或目錄的路徑。

如果指定目錄,Stylelint 會在指定的資料夾內建立快取檔案。檔案名稱會根據 process.cwd() 的雜湊值而定(例如 .cache_hashOfCWD),以便 Stylelint 能夠為不同專案的各種快取重複使用單一位置。

如果 cacheLocation 的目錄不存在,請務必在 *nix 系統上加上尾隨 /,或在 Windows 上加上 \。否則,Stylelint 會假設路徑為檔案。

cacheStrategy

CLI 旗標:--cache-strategy

快取用於偵測已變更檔案的策略。可以是「metadata」或「content」。

「content」策略在檔案的修改時間發生變更,但其內容並未變更時會很有用。例如,這可能會在「git clone」等 git 作業中發生,因為 git 沒有追蹤檔案修改時間。

maxWarnings

CLI 旗標:--max-warnings, --mw

設定可接受的警告數量限制。

當將 defaultSeverity 設定為 "warning",且預期處理程序會在警告時失敗(例如 CI 建置)時,這會很有用。

如果警告數量超過此值,

  • CLI 程序會以程式碼 2 退出
  • Node.js API 會將 maxWarningsExceeded 屬性新增至傳回的資料

disableDefaultIgnores

CLI 旗標:--disable-default-ignores, --di

停用預設忽略。Stylelint 就不會自動忽略 node_modules 的內容。

globbyOptions

CLI 旗標:--globby-options, --go

傳遞給 globby 的選項。 更多資訊

ignorePath

CLI 旗標:--ignore-path, -i

包含描述要忽略檔案的樣式的檔案路徑。路徑可以是絕對路徑,也可以相對於 process.cwd()。您可以重複選項以提供多個路徑。預設情況下,Stylelint 會在 process.cwd() 中尋找 .stylelintignore

ignoreDisables

CLI 旗標:--ignore-disables, --id

忽略 stylelint-disable(例如 /* stylelint-disable block-no-empty */)註解。

您可以使用此選項查看在沒有這些例外情況下的 linting 結果。

reportDescriptionlessDisables

CLI 旗標:--report-descriptionless-disables, --rdd

回報沒有說明的 stylelint-disable 註解。

回報下列模式

/* stylelint-disable */
a {}
/* stylelint-disable-next-line block-no-empty */
a {}

但是,不會回報下列模式(stylelint-disable -- <description>

/* stylelint-disable -- This problem is ignorable. */
a {}
/* stylelint-disable-next-line block-no-empty -- This problem is ignorable. */
a {}

reportInvalidScopeDisables

CLI 旗標:--report-invalid-scope-disables, --risd

回報不符合設定物件中指定規則的 stylelint-disable 註解。

reportNeedlessDisables

CLI 旗標:--report-needless-disables, --rd

回報實際上不符合任何需要停用的 lints 的 stylelint-disable 註解。

codeFilename

CLI 旗標:--stdin-filename

指定輸入的檔案名稱。

如果使用 codestdin 直接傳遞原始字串,您可以使用 codeFilename 將該程式碼與特定檔案名稱關聯。

quiet

CLI 旗標:--quiet

僅註冊具有「錯誤」等級嚴重性的規則問題(忽略「警告」等級)。

quietDeprecationWarnings

CLI 旗標:--quiet-deprecation-warnings

忽略不建議使用的警告。