snack-mall/admin-snack
sparksfly 8b70a3f49a feat: 完成商品分类管理功能,优化前后端配置与接口
1.  调整环境配置,优化 Vite 代理与 Axios 请求路径
2.  完善 Sa-Token 配置,新增 BusinessException 重载构造
3.  重构后端 Mapper 调用,替换 selectBatchIds 为 selectByIds
4.  重构登录与用户信息流程,移除验证码与 Mock 数据
5.  新增商品分类管理页面,支持树形增删改查与状态管理
6.  优化 Redis 序列化配置,升级 Jackson 序列化器
7.  完善类型定义与 API 封装,适配后端最新接口契约
2026-06-02 23:46:19 +08:00
..
public ``` 2026-06-02 10:05:37 +08:00
src feat: 完成商品分类管理功能,优化前后端配置与接口 2026-06-02 23:46:19 +08:00
.env.development feat: 完成商品分类管理功能,优化前后端配置与接口 2026-06-02 23:46:19 +08:00
.env.production ``` 2026-06-02 10:05:37 +08:00
.env.test feat: 完成商品分类管理功能,优化前后端配置与接口 2026-06-02 23:46:19 +08:00
.eslintrc-auto-import.json ``` 2026-06-02 14:25:53 +08:00
.gitignore ``` 2026-06-02 10:05:37 +08:00
.prettierrc.cjs.json ``` 2026-06-02 10:05:37 +08:00
.prettierrc.json ``` 2026-06-02 10:05:37 +08:00
README.md ``` 2026-06-02 10:05:37 +08:00
eslint.config.js ``` 2026-06-02 10:05:37 +08:00
index.html ``` 2026-06-02 10:05:37 +08:00
package-lock.json feat: 完成商品分类管理功能,优化前后端配置与接口 2026-06-02 23:46:19 +08:00
package.json ``` 2026-06-02 14:25:53 +08:00
pnpm-lock.yaml feat: 完成商品分类管理功能,优化前后端配置与接口 2026-06-02 23:46:19 +08:00
pnpm-workspace.yaml feat: 完成商品分类管理功能,优化前后端配置与接口 2026-06-02 23:46:19 +08:00
tsconfig.json ``` 2026-06-02 10:05:37 +08:00
tsconfig.node.json ``` 2026-06-02 10:05:37 +08:00
uno.config.ts ``` 2026-06-02 14:25:53 +08:00
vite.config.ts feat: 完成商品分类管理功能,优化前后端配置与接口 2026-06-02 23:46:19 +08:00

README.md

Admin Snack — 零食商城管理后台

基于 Vue 3 + Vite 6 + TypeScript 5 + Element Plus 的现代化电商管理后台。

技术栈

类别 技术
框架 Vue 3.5 (Composition API + <script setup>)
语言 TypeScript 5
构建 Vite 6
路由 Vue Router 4
状态 Pinia 2 + 持久化
UI 库 Element Plus 2.9
工具类 UnoCSS辅助
图表 ECharts 5 + vue-echarts
HTTP Axios
工具 dayjs、lodash-es、mitt、nprogress、VueUse
代码规范 ESLint 9 + Prettier 3
Node 要求 ≥ 20

快速开始

# 1. 安装依赖
npm install

# 2. 启动开发服务器
npm run dev
# 访问 http://localhost:5173

# 3. 生产构建
npm run build:prod

# 4. 类型检查
npm run type-check

# 5. 代码格式化
npm run format

默认账号

用户名admin
密  码123456

目录结构

admin-snack/
├── public/                      # 不经 vite 处理的静态资源
│   └── favicon.svg
├── src/
│   ├── api/                     # 接口请求层(按业务模块划分)
│   │   ├── auth.ts
│   │   ├── dashboard.ts
│   │   ├── product.ts
│   │   ├── order.ts
│   │   └── ...
│   ├── assets/                  # 静态资源
│   ├── components/              # 公共组件
│   │   ├── common/
│   │   └── business/
│   ├── hooks/                   # 组合式函数
│   ├── layouts/                 # 布局
│   │   ├── BasicLayout.vue      # 主框架(侧边栏+顶栏+内容区)
│   │   └── components/
│   │       ├── SideMenu.vue
│   │       └── NavBreadcrumb.vue
│   ├── permission.ts            # 路由守卫
│   ├── router/                  # 路由
│   │   ├── index.ts             # 基础路由
│   │   └── async-routes.ts      # 业务路由(按权限动态挂载)
│   ├── stores/                  # Pinia
│   │   ├── index.ts
│   │   └── modules/
│   │       ├── user.ts          # 用户/管理员
│   │       └── app.ts           # 应用全局
│   ├── styles/                  # 全局样式
│   │   ├── variables.scss       # 设计系统令牌
│   │   ├── reset.scss
│   │   ├── element.scss         # Element Plus 主题覆盖
│   │   ├── transitions.scss
│   │   └── index.scss
│   ├── types/                   # TS 类型
│   │   ├── api.ts
│   │   └── auth.ts
│   ├── utils/                   # 工具
│   │   ├── request.ts           # axios 封装
│   │   ├── date.ts              # dayjs 封装
│   │   ├── dict.ts              # 业务字典
│   │   └── bus.ts               # mitt 事件总线
│   ├── views/                   # 页面
│   │   ├── login/index.vue
│   │   ├── dashboard/index.vue
│   │   ├── product/
│   │   ├── order/
│   │   ├── user/
│   │   ├── coupon/
│   │   ├── seckill/
│   │   ├── notice/
│   │   ├── chat/
│   │   └── error/404.vue
│   ├── App.vue
│   └── main.ts
├── .env.development             # 开发环境变量
├── .env.test                    # 测试环境变量
├── .env.production              # 生产环境变量
├── eslint.config.js
├── .prettierrc.json
├── index.html
├── package.json
├── tsconfig.json
├── tsconfig.node.json
├── uno.config.ts
└── vite.config.ts

设计系统

风格 Minimalism · Data-Dense Dashboard
主色 #1E40AF(深蓝)/ #3B82F6(亮蓝)
辅色 #60A5FA
状态色 success #10B981 / warning #F59E0B / danger #EF4444
字体 系统字体栈PingFang SC / Microsoft YaHei
圆角 卡片 10px、按钮 6px、输入框 10px
阴影 三档sm / md / lg
背景 页面 #F8FAFC、卡片 #FFFFFF

后端联调

.env.development 中配置:

VITE_API_BASE_URL=http://localhost:8080

vite.config.ts 已配置 /api/uploads 路径代理到后端 server-snack 项目。

浏览器支持

现代浏览器 + ES2020Chrome 90+, Edge 90+, Firefox 90+, Safari 14+