一个使用 react+vite3+ts+react-router-dom6v Hooks Admin搭建的轻量级后台管理模板。

news/2024/7/15 17:01:54 标签: react.js, 前端, javascript

react18-vite3-ts-antd4+react-router-dom6v

前言

之所以搭这个模板,对于工作上业务需求老是变来变去,就觉得很烦,干脆搭了个admin模板,这样自己熟悉,好根据业务的需求进行一个修改。很多人会说后端管理系统模板都差不多,不是嘛。这个是事实,但是我的产品经理就跟我纠结几像素的问题。在加上刚好也想从头搭建一个项目是什么感觉。当然也参考了一下开源的项目。

介绍

一个使用 react+vite3+ts+react-router-dom6v Hooks Admin搭建的轻量级后台管理模板。

在线预览地址

在这里插入图片描述

在这里插入图片描述

  • link:演示

Git 仓库地址 (欢迎 Star⭐)

GitHub:地址

特点

  • 采用最新技术找开发:React18、React-Router v6、React-Hooks、TypeScript、Vite3
  • 轻量级没有那么多其它的插件
  • 已对axios进行再次封装,可以直接使用,进行请求接口时采用再次封装的npropress
  • 可使用图片作为图标,自定义组件。
  • 已配置好路由,菜单栏刷新采用cookie的方式进行保存菜单的展开状态。
  • 使用 Prettier 统一格式化代码,集成 Eslint、Stylelint 代码校验规范(项目规范配置)
  • 使用 husky、lint-staged、commitlint、commitizen、cz-git 规范提交信息(项目规范配置)
  • 代码简单,易懂,适合初学者学习。

规范

代码规范之JS/TS规范

使用eslint

代码规范之CSS规范

CSS检查代码规范使用 stylelint 插件

提交规范

使用commitlint

自动化格式代码

使用prettier

配合husky,提交规范检测格式配置如下:

  "husky": {
    "hooks": {
      "pre-commit": "lint-staged",
      "commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
    }
  },
  "lint-staged": {
    "*.{less,css}": [
      "prettier --write",
      "stylelint --fix",
      "git add"
    ],
    "*.{ts,tsx}": [
      "prettier --parser=typescript --write",
      "eslint --fix",
      "git add"
    ]
  }

总体工程结构

.
├─ public                 # 静态资源文件(忽略打包)
├─ src
│  ├─ api                 # API 接口管理
│  ├─ assets              # 静态资源文件
│  ├─ components          # 全局组件
│  ├─ config              # 全局配置项
│  ├─ enums               # 项目枚举
│  ├─ hooks               # 常用 Hooks
│  ├─ mock                # Mock封装
│  ├─ layouts             # 框架布局
│  ├─ routers             # 路由管理
│  ├─ store               # store
│  ├─ styles              # 全局样式
│  ├─ utils               # 工具库
│  ├─ pages               # 项目所有页面
│  ├─ App.tsx             # 入口页面
│  ├─ main.tsx            # 入口文件
│  └─ vite-env.d.ts       # vite 声明文件
├─ .editorconfig          # 编辑器配置(格式化)
├─ .env                   # vite 常用配置
├─ .env.development       # 开发环境配置
├─ .env.production        # 生产环境配置
├─ .eslintignore          # 忽略 Eslint 校验
├─ .eslintrc.cjs          # Eslint 校验配置
├─ .gitignore             # git 提交忽略
├─ .prettierignore        # 忽略 prettier 格式化
├─ .prettierrc.json       # prettier 配置
├─ .stylelintignore       # 忽略 stylelint 格式化
├─ .stylelintrc.cjs       # stylelint 样式格式化配置
├─ commitlintrc.cjs       # git 提交规范配置
├─ index.html             # 入口 html
├─ yarn.lock              # 依赖包包版本锁
├─ package.json           # 依赖包管理
├─ postcss.config.js      # postcss 配置
├─ README.md              # README 介绍
├─ tsconfig.json          # typescript 全局配置
└─ vite.config.ts         # vite 配置

使用说明

 1.推荐使用yarn
 2.拉取代码 git clone https://github.com/wskang12138/admin-template.git
 3.安装依赖 yarn install
 4.启动:yarn dev
   打包测试:yarn build:test
   打包: yarn build:pro
 5.node版本>=14.0

注意

重新配置自己的.git需要重新安装lint-staged 不然格式化不会生效
pre-commit执行

#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"
yarn stylelint
yarn lint-staged

http://www.niftyadmin.cn/n/118282.html

相关文章

【vue】环境安装与实例创建

vue是一套用于构建前端界面的框架。 文章目录1. vue环境安装2. 创建项目vue init创建项目Vite创建项目vue create创建项目vue ui创建项目3. 打包项目1. vue环境安装 首先安装nodejs并配置npm国内镜像:https://zhuanlan.zhihu.com/p/442215189 升级或安装cnpm并查看…

分布式架构设计模式

咖啡不冲,你一定会成功 分布式架构设计模式一、什么是设计模式?1.1 设计模式的由来1.2 设计模式有哪些种类1.3 如何学习设计模式二、六大设计原则2.1 开闭原则2.2 单一职责原则2.3 里氏替换原则2.4 迪米特法则2.5 接口隔离原则2.6 依赖倒置原则三、创建型…

Java工厂设计模式详解,大厂的Java抽象工厂模式分享!

我是好程序员-小源!本期文章主要给大家分享:Java工厂设计模式。文中使用通俗易懂的案例,使你快速学习和轻松上手!一、什么是Java抽象工厂模式1. Java抽象工厂是23种设计模式中创建型模式的一种,Java抽象工厂是由多个工…

Vue表单数据修改与删除

学习来源:视频p6 书接上文 目录页面修改修改对话框视频教程的做法后端提供接口前端调用接口修改完成后提交删除功能后端开设接口前端调用最终成果展示页面修改 将之前的 BookManage 页面的按钮改为想要的功能 可以注意到修改按钮的标签以及绑定了事件 handleClick…

EM@三角函数诱导公式

文章目录诱导公式单位圆坐标和三角函数记忆口诀符号看象限奇变偶不变例常用诱导公式🎈常用部分(5对)倒数关系六种三角函数间的转换关系小结ReflectionsShifts and periodicity诱导公式 诱导公式 - 维基百科,自由的百科全书 (wikipedia.org) 单位圆坐标…

使用Debussy加载设计项目

Debussy是NOVAS Software, Inc(思源科技)用来进行HDL Debug & Analysis的工具,这套软体主要不是用来跑模拟或看波形,它最强大的功能是:能够在HDL source code、schematic diagram、waveform、state bubble diagram之间,即时做…

软件测试常考面试题汇总

1.说说一个缺陷的生命周期 考查点: 测试人员对于缺陷整体生命周期的理解 ,注意面试官用词,有时只需要回答关键节点,有时需要分开阐述。 围绕缺陷提交、缺陷确认、缺陷打开、缺陷修复、缺陷回归、缺陷关闭这几个关键节点回答即可。 2.缺陷的基…

用C语言写一个自己的shell-Part Ⅲ--built-in commands

Part Ⅲ–Built-in commands Just as we have mentioned in part Ⅱ,the exec family of functions can’t perform built-in commands like cd. It’s like The reason for this is that cd is not a system command like ls or pwd.We need to write and inv…