本章节内容主要时要时参照官方文档配置便可。vue
在根项目目录项新建.eslintrc文件node
// 这里要安装 eslint-config-standard包,安装完后按照提示,安装相关的依赖。 // 这里主要时对项目中全部内容生效,要求比较低 { "extends": "standard" }
而后在client目录下新建一样的文件,来规范client端的代码webpack
// babel-eslint , eslint-config-airbnb及其相关依赖包 { "parser": "babel-eslint", "env": { "browser": true, "es6": true, "node": true }, "parserOptions": { "ecmaVersion": 6, "sourceType": "module" }, "extends": "airbnb", "rules": { "semi": [0] } }
在webpack客户端和服务端的配置文件中,在rules下新增一个rule。git
{ enforce: 'pre', // 在babel编译以前进行检查 test: /.(js|jsx)$/, loader: 'eslint-loader', // 使用eslint-loader,需安装 exclude: [ resolvePath('../node_modules') ] },
配置完这些后,咱们启动咱们的服务。会发现出现不少错误,window环境下能够会见到不少"LF"的错误,这是由于不一样的操做系统,行末的符号时不一致的。因此咱们须要配置editorconfig文件。如今主流的ide,如webstorm,vs code都带有edit的插件,在项目根目录下新建.editorconfig文件,按照以下配置便可。es6
root = true // 是否为根节点,说明在子目录下也可配置该文件 [*] // 用于全部文件 charset = utf-8 //编码格式 indent_style = space //缩进样式 indent_size = 2 // 缩进大小 end_of_line = lf // 以lf结尾 insert_final_newline = true // 自动在文件末尾插入新行 trim_trailing_whitespace = true // 去除行末的空格
在提交代码以前进行lint检查,若是不合格,不能提交代码。之前一直用的是husky -哈士奇,后来在vue-cli中看到了yorkie,看说明应该是husky的改进版本。下面来讲说二者的配置方式。github
// package.json的scripts增长lint命令,检查client目录下的代码 "lint": "eslint --ext .js --ext .jsx client/" // husky:在scripts下配置 "precommit": "npm run lint" // yorkie, 与scripts平级 "gitHooks": { "pre-commit": "npm run lint" }
这样,在你commit代码前就会进行检查,不符合要求的代码不能提交。web
本节的配置位于仓库的2-9分支vue-cli