使用stylelint進行Vue項目樣式檢查


  stylelint是一個強大的現代 CSS 檢測器,可以讓開發者在樣式表中遵循一致的約定和避免錯誤。擁有超過170條的規則,包括捕捉錯誤、最佳實踐、控制可以使用的語言特性和強制代碼風格規范。它支持最新的CSS語法,並且靈活可配置。

1. 安裝

  yarn add stylelint stylelint-config-standard stylelint-config-rational-order stylelint-order stylelint-scss stylelint-webpack-plugin --save-dev

  其中,stylelint是運行工具,stylelint-config-standard或者stylelint-config-recommended是stylelint的推薦配置,stylelint-order是CSS屬性排序插件,並且每個規則都支持自動修復(stylelint --fix)。

  stylelint本身就很好地支持SCSS語法(以及其他預處理器的語法),但是stylelint通常專注於標准CSS。而stylelint-scss引入了特定於SCSS語法的規則。

  stylelint-config-rational-order是Stylelint配置,通過按照以下順序將相關屬性聲明進行分組來對它們進行排序:
    1. Positioning      2. Box Model      3. Typography      4. Visual      5. Animation      6. Misc

  stylelint-webpack-plugin是webpack插件,使用stylelint檢查CSS/SCSS代碼。

 2. 配置

  在根目錄添加.stylelintrc.json配置校驗規則,也可以進行自定義規則

 1 {
 2   "extends": ["stylelint-config-standard", "stylelint-config-rational-order"],
 3   "plugins": ["stylelint-scss", "stylelint-order"],
 4   "rules": {
 5     "order/order": [
 6       "custom-properties",
 7       "dollar-variables",
 8       "declarations",
 9       "rules",
10       "at-rules"
11     ]
12   }
13 }

  也可以添加.stylelintignore忽略指定目錄或文件

 1 /dist/
 2 /test/
 3 
 4 *.min.css
 5 
 6 *.js
 7 *.ts
 8 *.png
 9 *.jpg
10 *.webp
11 *.ttf
12 *.woff
.stylelintignore

  在package.json中添加script執行校驗:
    "lint:style": "stylelint src/**/*.{css,scss} --syntax scss --fix"

   使用webpack插件校驗.vue文件中的style,在vue.config.js中添加:

 1 configureWebpack: config => {
 2   const StyleLintPlugin = require('stylelint-webpack-plugin')
 3   config.plugins.push(
 4     new StyleLintPlugin({
 5       files: ['src/**/*.{vue,html,css,scss,sass,less}'],
 6       failOnError: false,
 7       cache: true,
 8       fix: true,
 9     })
10   )
11 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM