介绍
得益于前端开源社区的贡献,当下已经有几种较为成熟的代码规范检查工具,包括 ESLint、stylelint、markdownlint、commitlint、ls-lint、lint-staged 等等。该工具基于这些工具为基础并制定相应的规范生成 CLI,让项目能够一键接入、一键扫描、一键修复、一键升级,并为项目配置 git commit 提交检查,降低项目实施规范落地的成本。你可以方便地为项目接入全套规范 Lint,也可以根据需求单独安装相关 Linter。
自检清单
一个规范的项目,需要内部组织检查以下列表(待补充)
Eslint、Stylelint、Prettier、Markdownlint、commitlint、name-lint是否有开启,不要随意关闭其中一项,项目应该定期检查是否有被关闭- 不要有
warn和error级别的的警告,执行pnpm lint可以扫描出所有相应的问题然后解决 - 最好不要更改现有的规范配置,需要更改最好有项目负责人决定
- 规范一部分是基于
git hooks,严禁不能手动添加--no-verify去忽略,需要确保所提交代码无规范错误在上传到 git 仓库 - 远程分支应当清理掉没用或者过时,避免过多的分支造成仓库体积过大,也方便管理
功能
pospal-lint工具集提供了以下功能:
Eslint
目前是社区最流行的、通用的 JavaScript Lint 工具,Lint 界的 Babel,提供了可扩展的配置包及插件:
- @pospal/eslint-config:可扩展 eslint 配置文件
stylelint
stylelint 通用的 CSS 编码检查工具,支持最新的 CSS 语法,提供了可扩展配置包:
- @pospal/stylelint-config:可扩展 stylelint 配置文件
- 属性排序
commitlint
commitlint 检验提交信息,提供了可扩展配置及提交校验修复
- @pospal/commitlint-config:可扩展 commitlint 配置文件
- commitizen:交互式 git 提交信息生成工具
- lint-staged:增量格式化代码工具
prettier
prettier代码格式化工具
ls-lint
ls-lint 文件夹及文件名格式校验,相比较于 eslint-plugin,他不会实时校验,但是 eslint-plugin 只能校验 eslint 能是别的文件,且不能校验文件夹