当前位置: 首页 > news >正文

web项目规范配置(husky、eslint、lint-staged、commit)

在现代Web开发中,规范配置有助于保持代码质量和一致性。通过使用Husky、ESLint、lint-staged和Commit规范,可以实现自动化的代码质量检查和规范化的提交流程。下面是详细的配置指南。

一、初始化项目

首先,确保你有一个Node.js项目。如果还没有,可以通过以下命令初始化:

mkdir my-web-project
cd my-web-project
npm init -y
 

二、安装必要的依赖

安装Husky、ESLint、lint-staged以及相关的依赖:

npm install --save-dev husky eslint lint-staged @commitlint/config-conventional @commitlint/cli
 

三、配置ESLint

ESLint是一个静态代码分析工具,用于识别和修复JavaScript中的问题。

  1. 初始化ESLint配置:

    npx eslint --init

    按照提示选择你的配置选项。例如,可以选择检查语法、找到问题和强制代码风格,选择JavaScript模块、React等。

  2. 创建或修改 .eslintrc.json文件,确保包含以下内容:

    {"env": {"browser": true,"es2021": true},"extends": ["eslint:recommended","plugin:react/recommended","plugin:@typescript-eslint/recommended"],"parserOptions": {"ecmaFeatures": {"jsx": true},"ecmaVersion": 12,"sourceType": "module"},"plugins": ["react","@typescript-eslint"],"rules": {"semi": ["error", "always"],"quotes": ["error", "double"]}
    }
    ​
     
     

四、配置lint-staged

lint-staged用于在提交代码之前运行ESLint,只检查暂存区中的文件。

  1. 在 package.json中添加以下配置:

    "lint-staged": {"*.js": ["eslint --fix","git add"]
    }
     
     

五、配置Husky

Husky用于在Git hooks中执行自定义脚本,比如在提交代码之前运行ESLint。

  1. 初始化Husky:

    npx husky install
  2. 在 package.json中添加husky钩子:

    "husky": {"hooks": {"pre-commit": "lint-staged","commit-msg": "npx --no-install commitlint --edit $1"}
    }
     
     
  3. 创建Husky配置文件:

    npx husky add .husky/pre-commit "npx lint-staged"
     

六、配置Commitlint

Commitlint用于强制执行规范化的提交消息格式。

  1. 创建 commitlint.config.js文件,并添加以下内容:

    module.exports = {extends: ['@commitlint/config-conventional']
    };
http://www.vanclimg.com/news/2478.html

相关文章:

  • ObservableValidator 详解:WPF 中的 MVVM 数据校验入门指南
  • DP - 状压 dp
  • postgres启用归档模式
  • 交底注意事项
  • AutoCAD2026界面底部状态栏不见了,如何找回?
  • 3D建模利器:Substance 3D Stager 3.1.3 安装与基础使用指南
  • windows 下go run,go build速度慢
  • MySQL如何查看每个分区的数据量
  • 人工智能驱动企业:通过情境感知AI重塑组织2不受束缚的企业
  • 美颜的功能分类有哪些?
  • PGSQL运维优化:提升vacuum执行时间观测能力
  • day08
  • 对比4款主流美颜App,谁才是自拍王者?
  • 基于Java+Springboot+Vue开发的房产销售管理系统源码+运行步骤
  • openlayers v10.3.0更新
  • macOS Ventura 13.7.7 (22H722) Boot ISO 原版可引导镜像下载
  • macOS Ventura 13.7.7 (22H722) 正式版 ISO、IPSW、PKG 下载
  • mysql外键
  • macOS Sonoma 14.7.7 (23H723) Boot ISO 原版可引导镜像下载
  • macOS Sonoma 14.7.7 (23H723) 正式版 ISO、IPSW、PKG 下载
  • Netty客户端
  • IACheck助力智能家电安全检测报告的精准性
  • 认知无线电合作感知,合作下的检测和虚警概率关系以及最有门限选择
  • 谷歌插件沉浸式翻译翻译本地文件
  • [Record] Ynoi2018Ynoi2019 大分块系列
  • 结构化数据自动生成文本技术解析
  • [Record] Ynoi2018+ 大分块系列
  • AI 赋能的故障排除:技术趋势与实践
  • vim E575: viminfo: Illegal starting char in line 的解决方案
  • 剑指offer-17、树的⼦结构