This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
Currently, two official plugins are available:
- @vitejs/plugin-react uses Babel for Fast Refresh
本项目高度重视代码质量与风格统一,集成了 lint-staged、Prettier 以及 ESLint,确保每一次提交的代码都符合团队规范。
在 .lintstagedrc.js 文件中,我们配置了 lint-staged,结合 Husky 实现了提交前自动检查和修复代码。主要规则如下:
- 针对
src目录下的js,jsx,ts,tsx,json,md文件:- 先用 ESLint 检查(
eslint -c .eslintrc.js --max-warnings 0),不允许有警告。 - 再用 Prettier 自动格式化(
prettier -w)。
- 先用 ESLint 检查(
- 针对
css,scss文件:- 使用 Stylelint 检查样式规范。
注意在package.json中添加
"scripts": {
"lint-staged": "lint-staged"
}这样可以保证每次提交的代码都经过严格的 lint 检查和自动格式化,减少低级错误和风格不统一的问题。
Prettier 负责代码的自动格式化,统一代码风格。所有支持的文件类型在提交前都会被 Prettier 格式化,避免因格式问题导致的代码 review 无效变更。
ESLint 用于检测 JavaScript/TypeScript 代码中的潜在问题和不规范写法。我们采用了自定义的 .eslintrc.js 配置,并且在 lint-staged 中设置了 --max-warnings 0,即不允许有任何警告,进一步提升代码质量。
- 正常开发和提交代码即可,Husky 会自动在
pre-commit阶段调用 lint-staged。 - 如果有格式或规范问题,提交会被阻止,请根据提示修复后重新提交。
- 采用react-router-dom v7版本,具体使用方法请查看v6文档
- 采用normalize.css
总结:
通过 lint-staged、Prettier 和 ESLint 的组合,项目实现了自动化的代码质量保障机制,极大提升了团队协作效率和代码可维护性。
如需自定义规则,请分别修改 .lintstagedrc.js、.prettierrc 和 .eslintrc.js 文件。