1. 创建一个项目
我们先从 gitee 上随便创建一个项目。 (点击项目可以看到本文操作的源码)
2. 项目初始化
yarn init -y
3. 随便写点代码

好像什么都没有发生?是的,因为我们什么都没有配。
4. 配置 ESLint
4.1 在 VScode 中安装 ESLint 插件

可以看到,安装好插件后其实代码仍然不会有错误提示,因为根据插件的文档可以看到,它需要我们在项目或者全局中安装 eslint 依赖,并进行一些配置。
4.2 安装依赖
yarn add babel-eslint eslint eslint-config-booheefe eslint-plugin-react --dev
4.3 配置 .eslintrc
./node_modules/.bin/eslint --init
接着会生成 .eslintrc 文件。
module.exports = {env: {browser: true,es2021: true,},extends: ['plugin:react/recommended','airbnb',],parserOptions: {ecmaFeatures: {jsx: true,},ecmaVersion: 12,sourceType: 'module',},plugins: ['react',],rules: {},};
- env:表示指定想启用的环境。
- extends:指定额外配置的选项,如 [‘airbnb’] 表示使用 Airbnb 的 Linting 规则。
- plugins:设置规则插件。
- parser:默认情况下 ESLint 使用 Espree 进行解析。
- parserOptions:如果将默认解析器更改,需要制定 parserOptions。
- rules:定义拓展并通过插件添加的所有规则。
现在可以看到我们的 eslint 规则已经生效,接着我们去 setting.json 中开启自动修复即可使用。
4.4 配置 setting.json

到此便完成 ESLint 的配置,开始享用吧~
5. 配置 StyleLint
5.1 安装 stylelint 包
yarn add stylelint stylelint-config-booheefe -D
5.2 配置 .stylelintrc 文件
{"extends": "stylelint-config-booheefe"}
5.3 使用
在 package.json 中创建命令 。
"scripts": {"lintcss": "stylelint '*.css' --fix"}
运行命令即可看到效果.
- 运行前:

- 运行后:
6. 使用 Husky 实现 git hooks 注入与脚本配置执行。
6.1 安装相应的包
yarn add husky@1.1.4 -D
注意,husky 最新版本已经升级到 6.0 ,具体用法也有所改变,我安装的是较老的版本了
6.2 配置 .huskyrc
"husky": {"hooks": {// "commit-msg": "commitlint -E HUSKY_GIT_PARAMS",// "pre-commit": "lint-staged"}}
6.3 使用 commitlint 规范提交信息
安装 commintlint
yarn add @commitlint/config-conventional @commitlint/cli -D
配置
.commitlint.jsmodule.exports = {extends: ['@commitlint/config-conventional']};
在
.huskyrc中配置{"hooks": {"commit-msg": "commitlint -E HUSKY_GIT_PARAMS",// "pre-commit": "lint-staged"}}
6.4 使用 lint-staged 来进行 lint 过滤校验
一个仅仅过滤出Git代码暂存区文件(被committed的文件)的工具,只对暂存区的代码使用 Lint 规则。
安装
yarn add lint-staged -D
配置
{"*.js": ["eslint --fix", "git add"],"*.css": ["stylelint --fix", "git add"]}
在 husky 中配置相应的钩子后即可使用
{"hooks": {"commit-msg": "commitlint -E HUSKY_GIT_PARAMS","pre-commit": "lint-staged"}}
