Files
WonderQ-Project/WonderQ-Admin-UI-Vue/README.md
duanshuwen 4c245f0d1f feat(admin, admin-ui): 实现RuoYi风格后台菜单管理,优化媒体资源处理
新增服务端菜单校验与归一化逻辑,完善菜单相关Schema;前端实现条件渲染的菜单编辑器,支持搜索式图标选择器与父级树过滤。新增媒体URL统一处理工具修复管理端本地静态资源路径映射问题,更新全部相关文档、技术决策记录与测试用例。本次变更不影响WonderQ-MiniAPP端。
2026-08-27 09:08:05 +08:00

1.5 KiB
Raw Blame History

WonderQ Admin UI Vue

WonderQ 管理端 Vue3 迁移端,采用 Vue 3、Element Plus、TypeScript、Pinia 和 Vue Router 4。

启动

yarn install
yarn dev

开发地址:http://localhost:5604/admin/

默认通过 Vite /api 代理访问 http://localhost:4000,可使用 VITE_API_PROXY_TARGET 覆盖。生产构建使用 yarn build,静态产物由反向代理挂载到 /admin

管理端会将后端返回的本地兜底图片 /assets/... 映射到管理端静态资源 /admin/assets/...首页配置所需的本地兜底图片已随管理端构建提供。OSS 图片仍使用后端返回的临时可访问 URL。

认证约定

  • Access Token 只保存在运行时内存,不写入 localStorage。
  • Refresh Token 由后端以 HttpOnly Cookie 保存。
  • 401 会自动调用 /api/admin/auth/refresh 并重试一次;刷新失败后返回登录页。
  • 菜单和按钮权限来自 /api/admin/system/profile,前端只加载预注册组件。
  • 管理端界面图标统一使用 @element-plus/icons-vue;菜单图标通过 src/components/layout/LayoutIcon.vue 的白名单适配器映射,未知图标回退为默认图标。
  • 菜单管理按 RuoYi 风格提供目录、页面、按钮三类编辑字段;父级菜单使用服务端树,排除按钮和当前编辑分支,图标选择器支持搜索、清空和 Element Plus 图标网格。
  • ConciergeDetail.icon 等接口字段是业务内容数据,不属于 UI 图标,不在图标迁移范围内。

验证

yarn test
yarn build