概述
路由配置在 src/router 文件下面:
提醒
项目默认采用动态添加路由方式控制
项目路由暂时只提供了前端控制路由
需要其它路由功能根据自己项目需求改造
目录说明
text
SnowAdmin
├─ src
│ ├─ router # 路由管理
│ │ ├─ index.ts # 路由入口文件
│ │ ├─ route-output.ts # 路由逻辑处理文件
│ │ ├─ route.ts # 路由配置文件
路由参数
tsx
interface RouteRecordRaw {
/* 路由访问路径 */
path: string;
/* 路由 name (对应页面组件 name, 可用作 KeepAlive 缓存标识 && 按钮权限筛选) */
name: string;
/* 路由重定向地址 */
redirect: string;
/* 视图文件路径 */
component: string | (() => Promise<unknown>);
/* 路由meta对象参数,我们通常将属性放到meta对象中 */
meta: {
/* 路由标题、菜单栏以及 tabsView 栏、菜单搜索名称(国际化) */
title: string;
/* 是否在菜单中隐藏 */
hide: boolean;
/* 是否缓存组件状态(页面缓存) */
keepAlive: boolean;
/* 是否固定在tagesView栏上 */
affix: boolean;
/* 是否是超链接菜单,外链url,开启外链条件:1、 link:链接地址不为空 2、iframe: false */
link: string;
/* 是否内嵌窗口,开启条件:1、iframe:true 2、link:链接地址不为空 */
iframe: boolean;
/* 当前路由权限表示,取角色管理。路由控制显示、隐藏。 超级管理员:admin;普通角色:common */
roles: Array<string>;
/* 菜单图标svg */
svgIcon?: string;
/* 菜单图标icon */
icon?: string;
/* 路由排序(当前层级的路由排序) */
sort: number;
};
/* 多级路由嵌套 */
children: RouteRecordRaw[];
}
参考资料
Vue Router:https://router.vuejs.org/zh/