【前端】代码提交前的最后防线:使用Husky确保代码质量

需求背景

我们通常会引入ESLintPrettier这样的工具来帮助我们规范本地代码的格式。然而,这种格式化过程仅在本地有效,并且依赖于我们在VSCode中手动设置自动保存功能。如果团队成员忘记进行这样的配置,或者在没有格式化的情况下提交了代码,我们该如何确保代码质量呢?

解决方案

为了解决这一潜在的风险,我们需要一种更为自动化的解决方案。这时,husky就派上了用场。

husky是一个强大的工具,它可以在代码提交之前自动执行一系列检查。通过配置husky来监听pre-commit钩子,我们可以在提交前自动运行npx eslint --ext .js,.vue src命令,对代码进行格式化和质量检查。

这样,无论何时,只要有人尝试提交代码,husky都会确保代码符合我们设定的标准,从而维护整个项目的代码质量。

操作步骤

1、确保你的项目中已经安装了ESLintPrettier。这些工具可以帮助你检查和自动修复代码风格问题。

bash 复制代码
npm install eslint prettier --save-dev

2、在项目根目录下创建或更新.eslintrc.js.prettierrc.js文件,配置你的ESLint规则和Prettier规则。 3、Husky是一个Git钩子管理工具,它可以在Git的特定事件(如commit)发生时运行脚本。

bash 复制代码
npm install husky --save-dev

4、在项目根目录下创建或修改.husky文件夹中的pre-commit钩子文件。这个钩子会在每次尝试提交代码之前运行。修改后的内容如下所示:

sh 复制代码
#!/bin/sh 

# 运行ESLint检查 
npx eslint --fix --ext .js,.vue src

5、关闭 VSCode 的自动保存操作,修改一下代码,使其不符合 ESLint 校验规则,提交一些不符合ESLint规则的代码,Husky应该会自动运行ESLint并阻止提交。

相关推荐
We་ct11 小时前
LeetCode 238. 除了自身以外数组的乘积|最优解详解(O(n)时间+O(1)空间)
前端·算法·leetcode·typescript
AC赳赳老秦11 小时前
低代码开发中的高效调试:基于 DeepSeek 的报错日志解析与自动修复方案生成
前端·javascript·低代码·postgresql·数据库架构·easyui·deepseek
乐迁~11 小时前
前端PDF导出完全指南:JSPDF与HTML2Canvas深度解析与实战(上)
前端·pdf
大猫会长11 小时前
css中,由基准色提取其他变体
前端·javascript·html
HellowAmy11 小时前
我的C++规范 - 请转移到文件
开发语言·c++·代码规范
进击的小头11 小时前
Git在C项目中的分支策略和规范
c语言·开发语言·git
CCPC不拿奖不改名11 小时前
Git 核心操作命令
人工智能·git·python·rnn·自然语言处理·josn
小土豆_77711 小时前
Owl 2.8.1 核心语法速查表(新手专用)
前端·odoo/owl
firstacui12 小时前
LVS三种模式搭建
前端·chrome
wanzhong233312 小时前
开发日记13-响应式变量
开发语言·前端·javascript·vue