|
|
042c1e54ed
|
环境变量修改为VITE前缀
|
2026-04-28 16:49:13 +08:00 |
|
|
|
bcc09d7064
|
打包工具更换为vite
Co-authored-by: Copilot <copilot@github.com>
|
2026-04-28 16:34:30 +08:00 |
|
|
|
a4f7db415e
|
权限系统重构:
- 角色模型改为 permissions 字段,移除 methods/includeUri/excludeUri
- 角色管理页面支持权限树选择,保存时只传最上级权限
- /common/verifyToken 返回 permissions,存入 vuex
- 新增 v-permission 指令,所有操作按钮和菜单均按权限控制显示
- 菜单按 list 权限过滤
- 各业务页面按钮加权限指令
- 角色管理列表只显示名称/描述/时间,不显示权限列,权限必选
|
2026-04-02 20:38:14 +08:00 |
|
|
|
86c7d75963
|
feat: 引入环境变量配置,统一管理接口路径
- 新增 .env 文件,配置 VUE_APP_PROXY_TARGET(开发模式代理目标)和 VUE_APP_API_BASE(接口根路径)
- vue.config.js 的 devServer proxy 目标改用 VUE_APP_PROXY_TARGET 环境变量
- src/utils/http.ts 的 axios 实例配置 baseURL 为 VUE_APP_API_BASE,所有请求自动加前缀
- 所有页面中 http 接口调用去掉 /api/v2 前缀,由 axios baseURL 自动补全
- 文件上传的 el-upload action 属性改用动态绑定,引用 VUE_APP_API_BASE 环境变量
- 涉及文件:Login.vue、Home.vue、Article.vue、Hitokoto.vue、Music.vue、PhotoWall.vue、SourceImage.vue、Statistics.vue、SystemUser.vue、SystemConfig.vue、SystemConfigAdd.vue、SystemRole.vue
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
2026-04-01 15:21:39 +08:00 |
|
|
|
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 |
|
|
|
4bad97a81d
|
修复报错
|
2026-03-21 02:38:04 +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 |
|
|
|
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 |
|