基于Vite + Vue3 + NaiveUI + TypeScript的中后台管理模块,开源免费,漂亮实用,不容错过!
大家好,我是TJ
关注TJ君,回复“武功秘籍”免费获取计算机宝典书籍
TJ君将之前发过的各种项目及工具进行了整理,收录到了GitHub项目,欢迎各位小伙伴光临Star,地址如下:https://github.com/Wechat-TJ/TJ-WORLD-FORU
昨天TJ君给大家分享了一个漂亮小姐姐鼓励学些各种语言的有趣项目,但似乎感兴趣的小伙伴不是很多,看来大家还是对学习更感兴趣!
那么今天TJ君就和大家分享一个即插即用又漂亮清新的中后台管理项目,Soybean Admin,让我们在周末快乐的学习起来!
Soybean Admin,是一个基于Vite + Vue3 + NaiveUI + TypeScript实现的免费开源的中后台模板项目。
项目内置丰富的各种配置,代码规范清晰,就算自己不用,拿来学习也是如教科书一般易于看懂上手。
TJ君总结了下,带大家来看看他的几大特点:
技术栈丰富
包含:Vite2 + Vue3 + TypeScript + NaiveUI + Pinia + WindiCss + Axios + AntV + @vueuse + iconify
,整体来说,使用了Vue3/vite2
等前端前沿技术开发, 以及高效率的npm
包管理器pnpm
。
代码规范
项目具有严格的代码规范,例如:
1、eslint + prettier + eslint-config-airbnb-base + eslint-plugin-vue + eslint-plugin-import + @typescript-eslint/eslint-plugin
等插件提供全面的代码格式规范,eslintrc
的 import/order
规则规范了导入依赖的顺序。
2、husky + lint-staged + vuetsc + commitlint + commitizen
保证了提交的代码符合eslint
规则和TS
类型检测,提交的内容规范遵循了angular
提交规范。
3、应用设计模式优化代码:项目里面多次用到策略模式替换if else
4、所有页面使用script-setup
写法,并遵循特定顺序。
5、目录结构组织遵循特定规范,页面的写法严格遵循模块思想,使得每个页面的代码结构清晰明了。
权限路由
项目使用简易的路由配置、基于mock
的动态路由能快速实现后端动态路由,支持如下几个功能:
1、动态的路由数据由mock
生成,前端添加动态路由
2、指定了mock
路由的类型,方便快速对接后端
3、菜单由动态路由数据生成,支持隐藏指定菜单,支持多级菜单,支持外链打开
4、在多页签中的缓存的页面会记录滚动位置
5、面包屑数据由当前路由和菜单数据生成
函数封装
对于各种请求函数进行了基于axios
的完善封装:
1、可创建多个不同的baseUrl
的请求实例。
2、将错误信息统一处理成特定格式,和请求成功的数据再按特定格式一起返回,减少对于各种错误的不知所措。
3、同时对于错误提示,自动智能提示错误,避免同一种错误在同一时间段显示。
4、无感刷新token
,不影响用户体验。
5、根据不同的Content-Type
转换数据,利用qs
序列化数据,支持单文件和多文件上传。
6、封装的请求函数支持promise
和hooks
两种, hooks
的请求函数包含loading
状态。
丰富的主题
整体风格清新简洁,同时可以切换例如黑暗模式等各种主题风格及布局模式,并且支持项目logo
自适应主题颜色。
项目实际效果
项目安装也是非常方便,只需要下载代码,然后执行安装、运行、打包
三个步骤即可:
//安装依赖
pnpm i
//运行
pnpm dev
//打包
pnpm build
觉得不错的小伙伴,赶紧学习起来,不要浪费周末的大好时光,fighting!项目地址如下:
点击下方卡片,关注公众号“TJ君”
回复“Soybean2022”,获取仓库地址
关注我,每天了解一个牛x、好用、有趣的东东