天天看點

項目實作eslint+prettier+pre-commit自動化

 下載下傳依賴

npm i husky prettier eslint eslint-config-prettier eslint-plugin-prettier -D      

配置husky

husky install;
npx husky add .husky/pre-commit "npm run test"; // 生成pre-commit鈎子      

.prettier配置檔案

{
  "tabWidth": 2,
  "useTabs": false,
  "semi": true,
  "singleQuote": true,
  "trailingComma": "none",
  "bracketSpacing": true,
  "printWidth": 120,
  "arrowParens": "avoid",
  "jsxBracketSameLine": false,
  "endOfLine": "auto"
}      

.eslintrc.json配置檔案

{
  "env": {
    "browser": true,
    "es6": true
  },
  "globals": {
    "Atomics": "readonly",
    "SharedArrayBuffer": "readonly"
  },
  "parserOptions": {
    "ecmaVersion": 2018,
    "sourceType": "module"
  },
  "plugins": ["prettier"],
  "rules": {
    "prettier/prettier": "error"
  }
}      

在package.json配置npm run test指令

"scripts": {
    "lint": "eslint --fix --ext .js src/"
  }