對所有js文件進行校驗
安裝pre-commit插件的依賴
npm i --save-dev pre-commit
package.json
{
"name": "nodetest",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"lint": "eslint . --fix",//對所有文件進行校驗,及補缺
"lint:create": "eslint --init" //創建。eslintrc.js
},
"pre-commit": [
"lint" //在git commit 時運行npm run lint 進行校驗,若有錯誤不能提交
],
"author": "shuah",
"license": "ISC",
"devDependencies": {
"eslint": "^5.16.0",
"pre-commit": "^1.2.2"
},
"dependencies": {
"chalk": "^2.4.2"
}
}
.eslintrc.js 文件
eslint 部分校驗規則點這里
module.exports = { "env": { "browser": false, "node": true, "commonjs": true, "es6": true }, "extends": "eslint:recommended", "globals": { "Atomics": "readonly", "SharedArrayBuffer": "readonly" }, "parserOptions": { "ecmaVersion": 2018 }, "rules": { "no-console": "off" , // 所有引號使用雙引號 "quotes":[ "error", "double" ], // 數組和對象鍵值對最后一個逗號, never參數:不能帶末尾的逗號, always參數:必須帶末尾的逗號, // always-multiline:多行模式必須帶逗號,單行模式不能帶逗號 "comma-dangle": [1, "always-multiline"], // 禁用 alert、confirm 和 prompt "no-alert": 0, // 控制逗號前后的空格 "comma-spacing": [2, { "before": false, "after": true }], // 控制逗號在行尾出現還是在行首出現 (默認行尾) // http://eslint.org/docs/rules/comma-style "comma-style": [2, "last"], } };
.eslintignore 文件
不用校驗的文件
node_modules
dist/
test
build/