在vscode中使用eslint+prettier格式化vue項目代碼 (轉載)

ESlint:javascript代碼檢測工具,能夠配置每次保存時格式化js,但每次保存只格式化一點點,你得連續按住Ctrl+S好幾回,才格式化好,自行體會~~javascript

 

vetur:能夠格式化html、標準css(有分號 、大括號的那種)、標準js(有分號 、雙引號的那種)、vue文件,
可是!格式化的標準js文件不符合ESlint規範,會給你加上雙引號、分號等,css

 

Prettier - Code formatter只關注格式化,並不具備eslint檢查語法等能力,只關心格式化文件(最大長度、混合標籤和空格、引用樣式等),包括JavaScript · Flow · TypeScript · CSS · SCSS · Less · JSX · Vue · GraphQL · JSON · Markdown

在vscode的文件-首選項-設置裏,右側配置裏添加以下代碼便可(代碼有註釋!),今後直接 Ctrl+S 就能一鍵格式化了

代碼以下:
{
     // vscode默認啓用了根據文件類型自動設置tabsize的選項
    "editor.detectIndentation": false,
    // 從新設定tabsize
    "editor.tabSize": 4,
    // #每次保存的時候自動格式化 
    "editor.formatOnSave": true,
    // #每次保存的時候將代碼按eslint格式進行修復
    "eslint.autoFixOnSave": true,
    // 添加 vue 支持
    "eslint.validate": [
        "javascript",
        "javascriptreact",
        {
            "language": "vue",
            "autoFix": true
        }
    ],
    //  #讓prettier使用eslint的代碼格式進行校驗 
    "prettier.eslintIntegration": true,
    //  #去掉代碼結尾的分號 
    "prettier.semi": false,
    //  #使用帶引號替代雙引號 
    "prettier.singleQuote": true,
    //  #讓函數(名)和後面的括號之間加個空格
    "javascript.format.insertSpaceBeforeFunctionParenthesis": true,
    // #這個按用戶自身習慣選擇 
    "vetur.format.defaultFormatter.html": "js-beautify-html",
    // #讓vue中的js按編輯器自帶的ts格式進行格式化 
    "vetur.format.defaultFormatter.js": "vscode-typescript",
    "vetur.format.defaultFormatterOptions": {
        "js-beautify-html": {
            "wrap_attributes": "force-aligned"
            // #vue組件中html代碼格式化樣式
        }
    },
}

原做者:Guoyubohtml

連接:https://www.jianshu.com/p/23a5d6194a4bvue

相關文章
相關標籤/搜索