1.安裝 VS Code 插件
- Vetur
- Prettier
- ESLint
為了讓代碼保存時自動格式化,在 setting.json 【setting.json打開方式:文件 --> 首選項 --> 設置 --> setting.json 或者快捷鍵 ctrl + , 】 添加如下代碼:
"editor.formatOnSave": true,
添加如下代碼,確保Prettier格式化不同類型的代碼,可能你的setting.json里面已經包含了下面的某些配置,就不要重復添加了:
"[vue]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }, "[html]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }, "[javascript]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }, "[typescript]": { "editor.defaultFormatter": "esbenp.prettier-vscode" },
2. 在你的項目中安裝 Prettier and ESLint 插件
npm i -D eslint eslint-config-prettier eslint-plugin-prettier prettier
3.配置Prettier格式代碼
項目根目錄下創建 .prettierrc.json,添加如下配置
{ "semi": false, "singleQuote": true }
常用配置如下:
"printWidth": 100, // 超過最大值換行 "tabWidth": 4, // 縮進字節數,默認為2 "useTabs": false, // 縮進不使用tab,使用空格 "semi": true, // 句尾添加分號 "singleQuote": true, // 使用單引號代替雙引號 "proseWrap": "preserve", // 默認值。因為使用了一些折行敏感型的渲染器(如GitHub comment)而按照markdown文本樣式進行折行 "arrowParens": "avoid", // (x) => {} 箭頭函數參數只有一個時是否要有小括號。avoid:省略括號,always:總是有括號 "bracketSpacing": true, // 在對象,數組括號與文字之間加空格 "{ foo: bar }" "disableLanguages": ["vue"], // 不格式化vue文件,vue文件的格式化單獨設置 "endOfLine": "auto", // 結尾是 \n \r \n\r auto "eslintIntegration": false, //不讓prettier使用eslint的代碼格式進行校驗 "htmlWhitespaceSensitivity": "ignore", "ignorePath": ".prettierignore", // 不使用prettier格式化的文件填寫在項目的.prettierignore文件中 "jsxBracketSameLine": false, // 在jsx中把'>' 是否單獨放一行 "jsxSingleQuote": false, // 在jsx中使用單引號代替雙引號 "parser": "babylon", // 格式化的解析器,默認是babylon "requireConfig": false, // Require a 'prettierconfig' to format prettier "stylelintIntegration": false, //不讓prettier使用stylelint的代碼格式進行校驗 "trailingComma": "es5", // 在對象或數組最后一個元素后面是否加逗號(在ES5中加尾逗號) "tslintIntegration": false // 不讓prettier使用tslint的代碼格式進行校驗
4.配置ESLint
在項目根目錄下修改 .eslintrc.js 或者 .eslintrc 。如果文件中已經包含下面的配置了,就不用重復設置了。
{ "extends": [ "plugin:prettier/recommended" ], "plugins": ["prettier"], "rules": { "prettier/prettier": "error" } }
按如上配置,現在在VSCode中保存代碼的時候,應該就能自動格式化了。