feat: 适配5.x后端,重构前端架构
主要变更: 1. 重构API目录结构,采用模块化设计,适配5.x后端接口规范 2. 优化布局组件,提升用户界面体验 3. 增强国际化支持,完善多语言配置 4. 新增权限控制功能,支持前端路由权限管理 5. 优化认证流程,支持JWT认证机制 6. 新增中间件和插件,提升系统扩展性 7. 优化状态管理,采用更清晰的模块化设计 8. 新增搜索框、广告等组件,丰富页面功能 9. 更改包管理工具从npm到pnpm,提升依赖管理效率 10. 完善配置系统,支持多环境配置 适配5.x后端特性: - 采用新的API接口规范 - 支持JWT认证机制 - 适配后端权限控制体系 - 支持后端国际化接口 - 优化数据交互方式
This commit is contained in:
@@ -1,33 +1,56 @@
|
||||
export interface Globals {
|
||||
// 防抖计时器
|
||||
lazy: NodeJS.Timeout | null
|
||||
// 随机数生成时的唯一性自增种子
|
||||
unique: Ref<number>
|
||||
// 语言包懒加载句柄
|
||||
loadLangHandle: Record<string, any>
|
||||
}
|
||||
|
||||
export interface Menus {
|
||||
id: number
|
||||
name: string
|
||||
type: string
|
||||
path?: string
|
||||
title: string
|
||||
url: string
|
||||
icon: string
|
||||
meta: {
|
||||
/**
|
||||
* 在 meta 中存储多个可能用到的属性
|
||||
* 兼容 RouteRecordRaw 和 RouteLocationNormalizedLoaded 类型
|
||||
*/
|
||||
id: number
|
||||
type: string
|
||||
menu_type: 'tab' | 'link' | 'iframe'
|
||||
}
|
||||
children: Menus[]
|
||||
export enum MenuType {
|
||||
DIRECTORY = 'directory',
|
||||
PAGE = 'page',
|
||||
LINK = 'link',
|
||||
IFRAME = 'iframe'
|
||||
}
|
||||
|
||||
export interface SiteConfig {
|
||||
export enum MenuDisplayType {
|
||||
TAB = 'tab',
|
||||
LINK = 'link',
|
||||
IFRAME = 'iframe'
|
||||
}
|
||||
|
||||
export enum LinkTarget {
|
||||
SELF = '_self',
|
||||
BLANK = '_blank',
|
||||
PARENT = '_parent',
|
||||
TOP = '_top'
|
||||
}
|
||||
|
||||
export interface MenuMeta {
|
||||
type: MenuType
|
||||
target?: LinkTarget
|
||||
hidden?: boolean
|
||||
disabled?: boolean
|
||||
badge?: string | number
|
||||
[key: string]: any
|
||||
}
|
||||
|
||||
export interface Menus {
|
||||
id: string
|
||||
name: string
|
||||
type: MenuType
|
||||
path?: string
|
||||
title: string
|
||||
url?: string
|
||||
icon?: string
|
||||
meta: MenuMeta
|
||||
children?: Menus[]
|
||||
sort?: number
|
||||
belong?: string
|
||||
belong_id?: number
|
||||
permissions?: string[]
|
||||
[key: string]: any
|
||||
}
|
||||
|
||||
export interface SiteConfig {
|
||||
site_name: string
|
||||
record_number?: string
|
||||
version: string
|
||||
@@ -59,18 +82,11 @@ export interface Member {
|
||||
}
|
||||
|
||||
export interface PersonalCenter {
|
||||
// 是否开启会员中心
|
||||
open: boolean
|
||||
// 从后台加载到的会员中心菜单数据
|
||||
user_menus: Menus[]
|
||||
// 是否显示一级菜单标题(当有多个一级菜单分组时显示)
|
||||
show_headline: boolean
|
||||
// 权限节点
|
||||
auth_node: Map<string, string[]>
|
||||
// 收缩布局(小屏设备)
|
||||
shrink: boolean
|
||||
// 菜单展开状态(小屏设备)
|
||||
menu_expand: boolean
|
||||
// 顶栏会员菜单下拉项
|
||||
nav_user_menus: Menus[]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user