docs: 修改系统注释
This commit is contained in:
parent
2fbe311b60
commit
2e90b3836f
2
.env
2
.env
@ -7,5 +7,5 @@ VITE_GLOB_APP_TITLE = SnowAdmin
|
||||
# 静态资源url
|
||||
VITE_IMG_BASE_URL = 'https://my-image-cdn.com'
|
||||
|
||||
# 本地mock数据
|
||||
# 本地mock数据 true开启 false关闭
|
||||
VITE_APP_OPEN_MOCK = true
|
||||
@ -22,17 +22,17 @@
|
||||
*
|
||||
* 路由meta对象参数,我们通常将属性放到meta对象中
|
||||
* meta: {
|
||||
* title: 菜单栏以及 tabsView 栏、菜单搜索名称(国际化)
|
||||
* title: 国际化key
|
||||
* hide: 是否隐藏此路由,不会显示在菜单树,可以访问
|
||||
* disable: 是否停用,不会显示在菜单树,且不可访问
|
||||
* keepAlive: 是否缓存组件状态
|
||||
* affix: 是否固定在 tabsView 栏上 菜单配置
|
||||
* link: 是否是超链接菜单,开启外链条件:1、 link:链接地址不为空 2、iframe: false 菜单配置
|
||||
* iframe: 是否内嵌窗口,开启条件:1、iframe:true 2、link:链接地址不为空 菜单配置
|
||||
* roles: 当前路由权限表示,取角色管理。路由控制显示、隐藏。 超级管理员:admin;普通角色:common
|
||||
* icon: 菜单、tabsView 图标等
|
||||
* svgIcon: svg图标
|
||||
* sort: 菜单顺序
|
||||
* disable: 是否停用此路由-不显示且不可访问
|
||||
* keepAlive: 是否缓存组件
|
||||
* affix: 固定在Tabs栏上-开启后Tabs栏无关闭按钮
|
||||
* link: 是否是超链接菜单,开启外链条件:1、 link:链接地址不为空 2、iframe: false
|
||||
* iframe: 是否内嵌外链窗口,开启条件:1、iframe:true 2、link:链接地址不为空
|
||||
* roles: 路由权限标识,取角色权限,超级管理员:admin;普通角色:common
|
||||
* svgIcon: svg菜单图标,优先级高于icon,取src/assets/svgs内的svg文件
|
||||
* icon: 普通icon菜单图标,默认取arco.design图标
|
||||
* sort: 排序字段
|
||||
* type: 1目录 2菜单 3按钮
|
||||
* }
|
||||
*/
|
||||
@ -40,30 +40,31 @@
|
||||
/**
|
||||
* 路由的层级设置
|
||||
* layout为框架布局,顶层路由
|
||||
* layout.children下的路由为menu菜单,例如:首页、系统设置、权限管理等
|
||||
* layout.children下的路由为systemMenu菜单,例如:首页、系统设置、权限管理等
|
||||
*/
|
||||
export const systemMenu = [
|
||||
// layout-二级路由(主要渲染页面)
|
||||
{
|
||||
id: "01",
|
||||
parentId: "0",
|
||||
path: "/home",
|
||||
name: "home",
|
||||
component: "home/home",
|
||||
id: "01", // 路由id
|
||||
parentId: "0", // 顶层路由 parentId: 0
|
||||
path: "/home", // 路由path
|
||||
name: "home", // 路由name
|
||||
component: "home/home", // 路由跳转的文件路径,默认在src/views内,这里就是src/views/home/home.vue
|
||||
meta: {
|
||||
title: "home", // 国际化
|
||||
hide: false, // 是否隐藏此路由
|
||||
disable: false, // 是否停用此路由
|
||||
keepAlive: false, // 缓存组件状态
|
||||
affix: true, // 固定在tagesView栏上
|
||||
title: "home", // 国际化key
|
||||
hide: false, // 是否隐藏此路由-不显示但可访问
|
||||
disable: false, // 是否停用此路由-不显示且不可访问
|
||||
keepAlive: false, // 是否缓存组件
|
||||
affix: true, // 固定在Tabs栏上-开启后Tabs栏无关闭按钮
|
||||
link: "", // 是否外链
|
||||
iframe: false, // 是否内嵌窗口
|
||||
roles: ["admin", "common"], // 路由权限
|
||||
svgIcon: "home", // 菜单图标
|
||||
sort: 1,
|
||||
iframe: false, // 是否内嵌外链窗口
|
||||
roles: ["admin", "common"], // 路由角色权限
|
||||
svgIcon: "home", // svg菜单图标,优先级高于icon,取src/assets/svgs内的svg文件
|
||||
icon: "", // 普通icon菜单图标,默认取arco.design图标
|
||||
sort: 1, // 排序字段
|
||||
type: 2 // type 1目录 2菜单 3按钮
|
||||
},
|
||||
children: null
|
||||
children: null // 存储子节点字段,默认为null
|
||||
},
|
||||
{
|
||||
id: "02",
|
||||
|
||||
@ -8,8 +8,8 @@ import { systemMenu, permissionData } from "../_data/system_menu";
|
||||
* 1、根据token判断角色
|
||||
* 2、过滤扁平路由,根据角色过滤权限和非禁用的节点
|
||||
* 3、将扁平路由转换为树结构
|
||||
* 3、路由树排序
|
||||
* 4、返回路由树
|
||||
* 4、路由树排序
|
||||
* 5、返回路由树
|
||||
*
|
||||
* 前端调用接口拿到路由数据后:
|
||||
* 1、将模块设置为真实模块
|
||||
|
||||
@ -33,7 +33,7 @@ export default [
|
||||
timeout: 300,
|
||||
response: ({ headers }: any) => {
|
||||
let data: any = {
|
||||
user: {}, // 用户信息
|
||||
user: {}, // 账户信息
|
||||
roles: [], // 角色
|
||||
permissions: [] // 权限
|
||||
};
|
||||
|
||||
@ -31,7 +31,7 @@ const router = createRouter({
|
||||
* 1、去登录页,无token,放行
|
||||
* 2、没有token,直接重定向到登录页
|
||||
* 3、去登录页,有token,直接重定向到home页
|
||||
* 4、去非登录页,有token,若是从登录页而来则重载路由,若是刷新页面则重载路由,重载后重新跳转
|
||||
* 4、去非登录页,有token,用户信息是否存在,有则放行,否则重新获取路由信息、初始化路由
|
||||
* 注意:
|
||||
* 全局routeTree不能持久化缓存
|
||||
* 页面刷新会导致addRoute动态添加的路由失效,需要重新初始化路由
|
||||
@ -54,7 +54,7 @@ router.beforeEach(async (to: any, _: any, next: any) => {
|
||||
// 项目内的跳转,处理跳转路由高亮
|
||||
currentlyRoute(to.name as string);
|
||||
} else {
|
||||
// 4、去非登录页,有token,校验是否动态添加过路由,添加过则放行,未添加则执行路由初始化
|
||||
// 4、去非登录页,有token,用户信息是否存在,有则放行,否则重新获取路由信息、初始化路由
|
||||
const routeStore = useRoutesConfigStore(pinia);
|
||||
|
||||
// 判断账号信息是否获取,先获取账号信息和路由信息,添加路由后再跳转(页面刷新时触发)
|
||||
|
||||
@ -88,13 +88,12 @@ export const routesConfigStore = () => {
|
||||
}
|
||||
/**
|
||||
* 路由初始化
|
||||
* 1、获取过滤角色权限后的树,后端做排序处理
|
||||
* 1、获取过滤角色权限后排过序的的路由树,后端处理
|
||||
* 2、将模块设置为真实模块
|
||||
* 3、存储路由树,用于生成菜单
|
||||
* 4、根据树生成一维路由数组
|
||||
* 5、动态添加路由
|
||||
* 6、缓存一维路由
|
||||
* 7、获取按钮权限数据
|
||||
*/
|
||||
async function initSetRouter() {
|
||||
// 1、获取过滤角色权限后的树,后端做排序处理
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user