編輯器自動格式化配置:javascript
plugincss
webstorm設置搜eslintr、eslint、stylelint,若是沒有,搜plugin,安裝prettier、eslint、stylelinthtml
File watchsvue
設置裏搜File watchs,增長prettier,打鉤開啓自動格式化,則會在保存時自動格式化。java
.vscode/settings.json
),添加如下配置: { // VSCode 中的 ESLint 插件默認是不會檢查 `.vue`、`.ts` 或 `.tsx` 後綴的 "eslint.validate": [ "javascript", "javascriptreact", "vue", "typescript", "typescriptreact" ], // 開啓保存時自動修復 "editor.codeActionsOnSave": { // eslint開啓 "source.fixAll.eslint": true, // stylelint開啓 "source.fixAll.stylelint": true }, // prettier:保存時自動格式化全部支持文件:javascript/javascriptreact/typescript/typescriptreact/json/graphql "editor.formatOnSave": true, "editor.defaultFormatter": "esbenp.prettier-vscode", // 或者僅指定js文件保存自動格式化 // Set the default //"editor.formatOnSave": false, // Enable per-language //"[javascript]": { // "editor.defaultFormatter": "esbenp.prettier-vscode", // "editor.formatOnSave": true // } // 指定VSCode用於IntelliSense(智能感知)的ts版本,將內置版本更換爲工做區版本 "typescript.tsdk": "node_modules/typescript/lib" }
而後你ctrl+s 你會發現你的文件格式切換了,而且vscode底部出現:node
一、安裝 husky和link-stagedreact
在安裝以前,要先配置好eslint配置或prettier配置git
執行如下命令,會自動配置好husky和lint-stagedweb
npx mrm lint-staged
我的理解:typescript
husky:用來給git對應的時機註冊鉤子的
lint-staged:用來監聽文件是暫存文件的
二、編輯 package.json
文件:
注意幾點:
v10.0.0
對原始暫存文件的任何新修改都將自動添加到提交中,不須要手動寫入git add 命令,目前網上看到的大部分教程都是帶有git add 命令的,若是加了以後,lint-staged會報一個警告,也可能發生意想不到的錯誤。v10.0.0
起,使用git stash來提升速度並在運行時提供備份,運行時必須有一個提交v10.0.0
開始,須要Node.js 10.13.0或更高版本v10.0.0
起,若是linter任務撤消了全部分階段的更改,則lint-staged將停止提交。要容許建立空提交,請使用該--allow-empty
選項package.json
.lintstagedrc
lint-staged.config.js
使用--config
或-c
標誌指定配置文件
"scripts": { "eslint:fix": "npx eslint --fix --ext \".js,.jsx,.ts,.vue,.html,.md\"", "eslint:lint": "npx eslint --ext \".js,.jsx,.ts,.vue,.html,.md\"", "stylelint:fix": "npx stylelint \"**/*.css,.less,.scss\" --fix" }, "husky": { "hooks": { "pre-commit": "npx lint-staged" } }, "lint-staged": { "*.{js,jsx,ts,vue,html,md}": "npm run eslint:fix", "*.{css,less,scss}": "npm run stylelint:fix" }
三、切記,先 git add
,提交到暫存, git commit
提交,就會執行lint-staged下配置的校驗命令,這裏注意:針對提交到暫存的修改的文件代碼校驗,未修改的文件不會校驗,代碼沒有問題纔會被真正提交,若是報出代碼錯誤,須要先修復全部代碼錯誤,纔會自動格式化,不然不會先自動格式化。
四、在緊急的狀況下,來不及修改代碼格式,可使用 git commit --no-verify
跳過代碼校驗。