Vue中使用eslint和editorconfig方式
使用eslint和editorconfig方式
使用eslint的好處
1、避免運行時因格式問題報錯
2、方便團隊合作,代碼風格統一
安裝eslint
命令行執行:
npm i eslint eslint-config-standard eslint-plugin-standard eslint-plugin-promise eslint-plugin-import eslint-plugin-node eslint-plugin-html -D
eslint-plugin-html插件識別html文件中的script標簽裡面的JavaScript
文件配置說明
在項目目錄新建.eslintrc文件:
{ "extends": "standard", "plugins": [ "html" ], "rules": { "no-new": "off" } }
啟動命令配置
在package.json的scripts中加入:
"lint": "eslint --ext .js --ext .jsx --ext .vue client/", "lint-fix": "eslint --fix --ext .js --ext .jsx --ext .vue client/"
client/ 為要檢查的文件夾
執行:
npm run lint //語法檢查 npm run lint-fix //自動修復語法檢查出現的問題
自動檢查語法配置
命令行執行:
npm i eslint-loader babel-eslint -D
然後在.eslintrc文件中添加"parser": "babel-eslint":
{ "extends": "standard", "plugins": [ "html" ], "parser": "babel-eslint", "rules": { "no-new": "off" } }
在webpack的配置文件的module.rules中加入:
{ test: /\.(vue|js|jsx)$/, loader: 'eslint-loader', exclude: /node_modules/, enforce: 'pre' //預處理 },
添加editorconfig
在項目目錄新建.editorconfig文件:
root = true [*] charset = utf-8 end_of_line = lf indent_size = 2 indent_style = space insert_final_newline = true trim_trailing_whitespace = true
vue editorconfig編輯器配置說明
editorconfig是什麼,有什麼用
editorconfig是定義編碼樣式的配置文件,幫助多人合作項目或者不同編輯器下保持代碼風格統一。
editorconfig示例
# http://editorconfig.org (Editorconfig 的官方網站) # 控制 EditorConfig 約定的范圍 root = true # 匹配全部文件 [*] # 設置字符集 charset = utf-8 # 縮進風格 可選"space"、"tab" indent_style = space # 縮進大小 可以是數字(空格數), tab(如果tab大小沒設置則按編輯器默認tab大小) indent_size = 2 # tab的寬度 tab_width = 4 # 結尾換行符,可選"lf"、"cr"、"crlf" end_of_line = lf # 文件最後插入一個空行 insert_final_newline = true # 刪除行尾空格 trim_trailing_whitespace = true # 匹配.java結尾的文件 [*.java] # 匹配.md結尾的文件 [*.md] trim_trailing_whitespace = false
root=true 控制 EditorConfig 約定的范圍 , Visual Studio 會在打開的文件的目錄和每個父目錄中查找名為 .editorconfig 的文件。 到達根文件路徑時或找到具有 root=true 的 .editorconfig 文件時搜索結束。
檢查是否生效
在項目的 js 文件中使用 tab 鍵進行縮進,分別修改 indent_size 屬性值為 2 和 4,觀察是否有變化。
如果沒有任何變化,說明還沒有安裝 Editorconfig 插件。
Editorconfig 插件
該插件的作用是告訴開發工具,如 Webstorm 自動去讀取項目根目錄下的 .editorconfig 配置文件,如果沒有安裝這個插件,光有一個配置文件是無法生效的。
Webstorm 2017.1 版本之後都是自動安裝這個插件的。
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。
推薦閱讀:
- 詳解React項目中eslint使用百度風格
- vscode 配置eslint和prettier正確方法
- Vue3如何通過ESLint校驗代碼是否符合規范詳解
- idea編譯器vue縮進報錯問題場景分析
- vue eslint報錯:Component name “xxxxx“ should always be multi-word.eslintvue的4種解決方案