React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint

这篇具有很好参考价值的文章主要介绍了React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

我的项目版本如下:

  • React: V18.2.0
  • Node.js: V16.14.0
  • TypeScript:最新版
  • 工具: VsCode

本文将采用图文详解的方式,手把手带你快速完成在React项目中配置husky、prettier、commitLint,实现编码规范的统一,git提交规范的统一。


一、使用 eslint

1.1 装包

npm install eslint @typescript-eslint/parser @typescript-eslint/eslint-plugin --save-dev

1.2 ESLint 插件安装

React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint,# React基础,react.js,前端,typescript


1.3 创建命令并使用

新增命令

"lint": "eslint \"src/**/*.+(js|ts|jsx|tsx)\"",

React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint,# React基础,react.js,前端,typescript
执行 npm run lint :
React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint,# React基础,react.js,前端,typescript

二、使用 prettier

2.1 装包

npm install prettier eslint-config-prettier eslint-plugin-prettier --save-dev

React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint,# React基础,react.js,前端,typescript

2.2 创建配置文件

在根目录中创建 .eslintrc.js 文件,写入如下代码

module.exports = {
  "env": {
    "browser": true,
    "es2021": true
  },
  "extends": [
    "eslint:recommended",
    "plugin:react/recommended",
    "plugin:@typescript-eslint/recommended",
    "plugin:prettier/recommended"
  ],
  "overrides": [
  ],
  "parser": "@typescript-eslint/parser",
  "parserOptions": {
    "ecmaVersion": "latest",
    "sourceType": "module"
  },
  "plugins": [
    "react",
    "@typescript-eslint"
  ],
  "settings": {
    "react": {
      "version": '18.2.0', // 指定你的 React 版本,可以是具体版本号或 "detect" 自动检测
    },
  },
  "rules": {
  }
}

2.3 安装插件

Prettier - Code formatter

React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint,# React基础,react.js,前端,typescript
安装成功后:
React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint,# React基础,react.js,前端,typescript

2.3 创建命令并使用

新增命令:表示扫描文件格式,并将文件中的代码修改为正确的格式

"format": " prettier --write \"src/**/*.+(js|ts|jsx|tsx)\"",

React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint,# React基础,react.js,前端,typescript
运行命令:
React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint,# React基础,react.js,前端,typescript
React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint,# React基础,react.js,前端,typescript

2.4 vscode 配置

配置成功后,之前讲的通过 npm run format 可以将双引号格式化为 单引号,现在仅需使用 ctrl + s 保存文件,vscode 即可自行格式化

{
  "editor.codeActionsOnSave": {
    "source.fixAll.eslint": true
  }
}

React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint,# React基础,react.js,前端,typescript

2.5 代码风格配置

根目录下新建 .prettierrc.js 文件,并写入如下代码:

module.exports = {	
  // 箭头函数只有一个参数的时候可以忽略括号
  arrowParens: 'avoid',
  // 括号内部不要出现空格
  bracketSpacing: true,
  // 行结束符
  endOfLine: 'auto',
  // 行宽
  printWidth: 100,
  // 换行方式
  proseWrap: 'preserve',
  // 分号
  semi: false,
  // 使用单引号
  singleQuote: true,
  // 缩进
  tabWidth: 2,
  // 使用tab缩进
  useTabs: false,
  // 后置逗号,多行对象、数组在最后一行增加逗号
  trailingComma: 'es5',
  parser: 'typescript',
}

2.6 重启 vscode

重启 vscode 后,我们在 .prettierrc.js 文件中配置的代码风格才会生效


三、将代码提交到 git 仓库

如何使用 vscode 将代码推送至 git 仓库👉:http://t.csdnimg.cn/t7YT9


四、使用 husky

4.1 简介

  • 一个 git hook 工具
  • 在 git commit 之前执行自定义的命令
  • 如执行代码风格的检查,避免提交非规范代码

最终实现的是,即使多人协同开发项目,最终提交到远程仓库中的,也是符合规范的、风格统一的代码。

4.2 安装

npm install husky -D

4.3 编辑package.json >准备脚本并运行一次

npm pkg set scripts.prepare="husky install"
npm run prepare

4.4 增加钩子函数

// 表示 git commit 之前执行 npm run lint 
npx husky add .husky/pre-commit "npm run lint"
// 表示 git commit 之前执行 npm run format 
npx husky add .husky/pre-commit "npm run format"
// 表示 git commit 之前执行 npm run git add .
npx husky add .husky/pre-commit "git add ."

React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint,# React基础,react.js,前端,typescript
简单测试一下:
React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint,# React基础,react.js,前端,typescript


五、使用 commitlint

5.1 安装

windows:

npm install --save-dev @commitlint/config-conventional @commitlint/cli

mac:

npm install --save-dev @commitlint/{config-conventional,cli}

5.2 配置

echo "module.exports = {extends: ['@commitlint/config-conventional']}" > commitlint.config.js

5.3 安装 husky

注:已安装 husky 的不用重复安装
npm:

npm install husky --save-dev

yarn

yarn add husky --dev

5.4 增加 hook

npx husky add .husky/commit-msg  'npx --no -- commitlint --edit ${1}'

5.5 测试一下

随便写一个提交描述,将无法成功提交
React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint,# React基础,react.js,前端,typescript

5.6 正确且优雅的提及

参考 git 上的开源项目 vue-pure-admin
React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint,# React基础,react.js,前端,typescript


参考大家熟知的 vue.js :
React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint,# React基础,react.js,前端,typescript

5.7 提交格式

前缀 + 冒号 + 一个空格 + 本次提交描述

5.8 查看合法的提交前缀

React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint,# React基础,react.js,前端,typescript
React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint,# React基础,react.js,前端,typescript


六、授人以渔

6.1 以上步骤如何来的?

或许屏幕前的你,会好奇,为啥我就知道是这些命令,然后这样配置就能成功,其实这些步骤,在 github 上都有写, 而且比你在网上找的博客帖子更加准确。

6.2 以 husky 为例

React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint,# React基础,react.js,前端,typescript
React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint,# React基础,react.js,前端,typescript文章来源地址https://www.toymoban.com/news/detail-713710.html


七、创作不易,点赞收藏不迷路

到了这里,关于React18入门(第二篇)——React18+Ts项目配置husky、eslint、pretttier、commitLint的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 第二章 React项目配置ESlint和Prettier实现自动格式化代码以及统一代码风格

    第二章 React项目配置ESlint和Prettier实现自动格式化代码以及统一代码风格

    欢迎加入本专栏!本专栏将引领您快速上手React,让我们一起放弃放弃的念头,开始学习之旅吧!我们将从搭建React项目开始,逐步深入讲解最核心的hooks,以及React路由、请求、组件封装以及UI(Ant Design)框架的使用。让我们一起掌握React,开启前端开发的全新篇章! 需要准

    2024年02月03日
    浏览(48)
  • 基于Vue3+Vite+TS+ESLint+Prettier+Husky+lint-staged+commitlint+stylelint的项目构建

    基于Vue3+Vite+TS+ESLint+Prettier+Husky+lint-staged+commitlint+stylelint的项目构建

    博客后台管理系统使用后的是基于Vue3+Vite+TS+ESLint+Prettier的开发,具体项目构建如下 ESLint: 控制代码质量 Prettier: 控制代码风格 2.1、安装ESLint、Prettier相关相关包 eslint: ESLint的核心代码库 prettier: Prettier的格式化代码的核心代码库 eslint-config-airbnb-base: airbnb的代码规范(依赖pl

    2024年02月07日
    浏览(17)
  • 为react项目添加开发/提交规范(前端工程化、eslint、prettier、husky、commitlint、stylelint)

    为react项目添加开发/提交规范(前端工程化、eslint、prettier、husky、commitlint、stylelint)

    因历史遗留原因,接手的项目没有代码提醒/格式化,包括 eslint、pretttier,也没有 commit 提交校验,如 husky、commitlint、stylelint,与其期待自己或者同事的代码写得完美无缺,不如通过一些工具来进行规范和约束。 eslint 是一个代码校验工具,用来规范项目代码风格。 初始化 通

    2024年02月14日
    浏览(50)
  • vite+react+ts+eslint+prettier构建react开发项目

    目录 一、构建项目 二、安装eslint和prettier的依赖 三、修改.eslintrc.cjs,创建.prettierrc.cjs 1、.eslintrc.cjs文件配置 2、ESlint忽略文件.eslintignore 3、.prettierrc.cjs文件配置  4、prettierrc忽略配置文件.prettierignore

    2024年02月11日
    浏览(17)
  • 使用React18+Ts创建项目

    使用React18+Ts创建项目

    首先,使用create-react-app工具创建一个新的React项目: 使用脚手架创建项目后,自带react-dom等依赖项,但react中的所用的路由方法是react-router-dom中。 默认情况下,create-react-app模板会自动生成一些文件和文件夹,这些文件和文件夹包括: node_modules:存储所有的项目依赖项。 p

    2024年02月09日
    浏览(8)
  • 使用 create-react-app 搭建项目ts+less+antd+redux+router+eslint+prettier+axios

    使用 create-react-app 搭建项目ts+less+antd+redux+router+eslint+prettier+axios

    当前市面上有很多前端框架或者模板、如:umi、dva、antd-design-pro、create-react-app 等一些框架或者模板。 create-react-app 是 react 官方提供的,相对来说比较干净一些。 此项目是在 create-react-app 的基础上进行搭架、项目采用 ts 语法 项目整体上会添加上以下功能: 完整项目代码 传

    2024年02月03日
    浏览(17)
  • vue3+ts项目中eslint校验配置

    vue3+ts项目中eslint校验配置

    eslint中文官网:ESLint - Pluggable JavaScript linter - ESLint中文 ESLint 是一个根据方案识别并报告 ECMAScript/JavaScript 代码问题的工具,其目的是使代码风格更加一致并避免错误,合理利用可以提高代码质量。 1.安装eslint pnpm i eslint -D 2.生成eslint配置文件 npx eslint --init 3.安装vue3代码环境校

    2024年02月04日
    浏览(32)
  • 【vue3+ts项目】配置eslint校验代码工具,eslint+prettier+stylelint

    【vue3+ts项目】配置eslint校验代码工具,eslint+prettier+stylelint

    package.json中 vite后面加上 --open 回答问题如下: 使用eslint仅检查语法,还是检查语法及错误,选第二个 使用的是什么模块,选第一个 项目使用的是什么框架,选vue 项目中使用TyoeScript ,选yes 项目运行在哪,选浏览器 创建的配置类型需要什么类型的,选Javascript 需要安装这些

    2024年02月09日
    浏览(33)
  • vue3+Vite+TS项目,配置ESlint和Prettier

    vue3+Vite+TS项目,配置ESlint和Prettier

    实操过的有两种方式 1.vue脚手架 2.vite(推荐,也是尤大大团队研发) 具体怎么新建一个vue3项目就不多讲了,可以按照官方文档来 创建后的文件目录长这样 多提一句,vite也会随着时间不断迭代,后续项目结构可能还会发生变化,当前使用的vue版本 和vite版本也一并贴出来 下

    2024年04月15日
    浏览(20)
  • Nodejs+Typescript+Eslint+Prettier+Husky项目构建

    仓库地址 确保已经安装了git以及Node.js和npm,通过 git -v 、 node -v 和 npm -v 检查是否安装。 在新建的tsconfig.json中,修改target、module、和outDir,其中outDir设置为 ./dist ,其他根据情况设置。 根据情况选择配置: 首先,安装 Prettier,在项目目录中,运行 创建一个 .prettierrc 文件来

    2024年02月11日
    浏览(15)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包