22 Commits

Author SHA1 Message Date
4dd48489a5
refactor: 统一接口响应格式处理
- 修改 axios 响应拦截器,统一处理包装后的响应格式:
  - code === 0: 返回 data 中的实际数据
  - code === -1: ElMessage.error 提示 message 并 reject
  - 其他情况: 兼容原始响应格式

- 更新各页面数据取值方式:
  - 分页列表: data.data → data.list
  - SystemUser.vue, SystemRole.vue, Article.vue
  - Music.vue, Hitokoto.vue, PhotoWall.vue, SourceImage.vue
  - SystemConfigAdd.vue: data.data.exists → data.exists

- Home.vue: 简化 verifyToken 响应处理
- SystemConfig.vue: 简化 save 响应处理
- SystemRole.vue/SystemUser.vue: 简化 delete 响应处理

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-21 11:46:15 +08:00
a0e49ceda6
修改下划线分隔的字段 2026-03-21 01:26:06 +08:00
499951f9da
v1改为v2 2026-03-21 01:06:54 +08:00
1e7748db64
feat: 表格区域独立滚动,表头固定
- 修改 common.less:
  - 新增 .page-wrapper 类,使用 flex 纵向布局占满父容器
  - 修改 .table-container 为 flex 布局,让表格自适应高度
  - .el-table 使用 flex:1 实现内容区域滚动、表头固定

- 7个列表页面添加 page-wrapper 类:
  - SystemUser.vue, SystemRole.vue
  - Hitokoto.vue, PhotoWall.vue, Music.vue, SourceImage.vue
  - Article.vue(特殊处理:左右分栏布局适配)

现在设置 100 条数据时,表格内容独立滚动,分页始终可见,不会触发整页滚动。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-20 22:16:49 +08:00
90a6153776
升级依赖 & 修复 TS 类型解析 & 适配 element-plus 样式变化
依赖升级:
- element-plus 2.2.28 -> 2.13.5
- vue 3.2.45 -> 3.5.30
- vue-router 4.0.11 -> 4.6.4
- axios 0.22 -> 1.13.6
- echarts 5.2.1 -> 5.6.0
- hls.js 1.3 -> 1.6.15
- typescript 4.5.5 -> 5.9.3

破坏性变更修复:
- axios 1.x: config.headers.token= 改为 config.headers.set()
- element-plus locale 路径: lib/ -> es/
- Article.vue: Node 改为具名导入 { Node }
- main.ts: 路由守卫参数补全显式类型声明
- SystemConfig.vue: 移除废弃的 clearValidate 包装函数

TypeScript 配置修复 (tsconfig.json):
- moduleResolution: node -> bundler (支持 exports 字段, 解决 vue-router .mts 类型文件)
- 新增 skipLibCheck: true (规避第三方库内部类型冲突)
- 新增 vuex paths 映射 (vuex exports 字段缺少 types 条件)

样式适配 (common.less):
- el-dialog 新增 padding: 0, 消除升级后产生的白边
- el-form--inline 内 el-select 补 min-width: 160px, 修复搜索栏下拉框过窄问题

清理:
- 删除 src/vuex.d.ts (已无用的 vuex store 类型扩充文件)
2026-03-20 00:33:09 +08:00
8a2ba4e2bf
样式优化 2026-03-19 23:24:30 +08:00
96b032d262
refactor: 全面迁移 vue-class-component 至 Vue 3 Composition API
- 将所有页面组件从 class 语法重写为 <script setup> 风格
  - App.vue / Login.vue / Home.vue / Welcome.vue
  - api: Hitokoto.vue / HitokotoAdd.vue / Music.vue / PhotoWall.vue / SourceImage.vue
  - system: Article.vue / Statistics.vue / SystemConfig.vue / SystemConfigAdd.vue / SystemRole.vue / SystemUser.vue

- 新增 src/utils/http.ts:独立 axios 实例,含请求/响应拦截器,替代 vue-axios 插件
- baselist.ts:abstract class BaseList<T> → useBaseList<T>() 组合式函数
- types.ts:VForm 类型改用 Element Plus 原生 FormInstance
- main.ts:移除 vue-axios 及内联 axios 配置,路由守卫直接引用 store

- 依赖清理:移除 vue-class-component、vue-axios
2026-03-19 23:05:59 +08:00
ac3388f35d
导航面包屑修改为tab页签 2023-10-22 00:24:48 +08:00
5e89d14301
替换部分相对路径
使用@作为src目录前缀
2023-01-25 02:04:04 +08:00
134dc41848
element-plus改为按需引入 2023-01-17 01:01:23 +08:00
6ed8c355d8
升级vite依赖库版本 2023-01-15 14:15:50 +08:00
1ff7f5dec5
element-plus 版本升级适配 2023-01-15 13:50:58 +08:00
e698b71828
修改执行搜索时分页组件没有重置到首页的问题 2023-01-15 10:46:45 +08:00
e5947754ea 接口地址修改 2022-02-02 01:54:57 +08:00
2f6659eeb7 表格高度 2021-12-04 12:39:25 +08:00
d21f63d8f3 http类型修改 2021-10-06 01:28:04 +08:00
1f4e265c7f 歌曲文件上传 2021-10-05 22:54:20 +08:00
557f8874cb axios泛型修改 2021-10-05 15:55:13 +08:00
5b29560455 去掉文章预览语法高亮 2021-10-04 23:23:00 +08:00
8dd1916a3d 照片墙&图片资源库 2021-10-04 23:19:40 +08:00
c751f26122 统计分析 2021-10-04 20:10:38 +08:00
4a64f8f492 博客文章 2021-10-04 16:24:50 +08:00