vscode中eslint插件的配置-prettier


用vue-cli構建vue項目,會有個eslint代碼檢測的安裝

可vscode自帶代碼格式化是prettier格式(右鍵有格式化文件或alt+shift+f)

這時候要在vscode上裝一個eslint插件

裝完后在文件-----》首選項-------》設置里找到settings.json

 

 eslint配置如下,(配置的·具體詳情還有待研究,我也是網上copy的,不過親測可用)。保存配置后每次寫.vue文件只要control+s保存,就可以把代碼格式改成符合eslint標准

{
  "editor.fontSize": 20,
  "files.autoSave": "off",
  "eslint.autoFixOnSave": true,
  "[html]": {
    "editor.defaultFormatter": "vscode.html-language-features"
  },
  "[css]": {
    "editor.defaultFormatter": "michelemelluso.code-beautifier"
  },
  //eslint 代碼自動檢查相關配置
  "eslint.enable": true,
  "eslint.run": "onType",
  "eslint.options": {
    "extensions": [".js", ".vue"]
  },
  "eslint.validate": [
    "javascriptreact",
    "javascript",
    {
      "language": "vue",
      "autoFix": true
    },
    "html",
    {
      "language": "html",
      "autoFix": true
    }
  ]
  }
}

 

 在寫vue的時候很多人會選擇prettier+eslint來規范代碼格式

這時候有些人就很奇怪,我明明在setting.json里配置了prettier的格式化規范,怎么就不生效呢

其實用vscode做vue開發的時候都會安裝一個Vetur的插件來對.vue格式的文件進行處理,Vetur自帶了格式化,規范就是使用prettier

如果你有裝prettier插件,並且在設置或setting.json里配置了prettier的話是無效的

如上圖,在設置勾選后配置后就會在setting.json里生成對應配置代碼,不過由於Vetur的存在,此時的prettier其實並未起作用(可能是優先級問題吧,我也不清楚)

正確配置看下圖和Vetur官方文檔

 

官網鏈接

 所以說有兩種方法配置,一種是在根目錄下寫一個.prettier文件,文件里的內容可以參考網上其它文章。另一種就是如上圖所示,在setting.json里配置

------------------------------------------------------------------------------分割線---------------------------------------------------

eslint也是能格式化的,只是有局限性,所以要prettier來配合

 

 

完整配置:

{
  "editor.fontSize": 20,
  "files.autoSave": "off",
  "eslint.autoFixOnSave": true,
  "[html]": {
    "editor.defaultFormatter": "vscode.html-language-features"
  },
  "[css]": {
    "editor.defaultFormatter": "michelemelluso.code-beautifier"
  },
  //eslint 代碼自動檢查相關配置
  "eslint.enable": true,
  "eslint.run": "onType",
  "eslint.options": {
    "extensions": [".js", ".vue"]
  },
  "eslint.validate": [
    "javascriptreact",
    "javascript",
    {
      "language": "vue",
      "autoFix": true
    },
    "html",
    {
      "language": "html",
      "autoFix": true
    }
  ],
  "vetur.format.defaultFormatterOptions": {
    "prettier": {
      "semi": false,
      "singleQuote": true
    }
  }
}

 


免責聲明!

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



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