2021-06-07 17:22:07 +08:00
|
|
|
|
import { RouteRecordRaw } from 'vue-router';
|
|
|
|
|
|
import Layout from '@/views/layout/index.vue'
|
|
|
|
|
|
|
|
|
|
|
|
// 定义动态路由
|
|
|
|
|
|
export const dynamicRoutes = [
|
|
|
|
|
|
{
|
|
|
|
|
|
path: '/',
|
|
|
|
|
|
name: '/',
|
|
|
|
|
|
component: Layout,
|
|
|
|
|
|
redirect: '/home',
|
|
|
|
|
|
meta: {
|
|
|
|
|
|
isKeepAlive: true,
|
|
|
|
|
|
},
|
2023-03-15 11:41:03 +08:00
|
|
|
|
children: []
|
2022-10-26 20:49:29 +08:00
|
|
|
|
// children: [
|
|
|
|
|
|
// {
|
|
|
|
|
|
// path: '/home',
|
|
|
|
|
|
// name: 'home',
|
|
|
|
|
|
// component: () => import('@/views/home/index.vue'),
|
|
|
|
|
|
// meta: {
|
|
|
|
|
|
// title: '首页',
|
|
|
|
|
|
// // iframe链接
|
|
|
|
|
|
// link: '',
|
|
|
|
|
|
// // 是否在菜单栏显示,默认显示
|
|
|
|
|
|
// isHide: false,
|
|
|
|
|
|
// isKeepAlive: true,
|
|
|
|
|
|
// // tag标签是否不可删除
|
|
|
|
|
|
// isAffix: true,
|
|
|
|
|
|
// // 是否为iframe
|
|
|
|
|
|
// isIframe: false,
|
|
|
|
|
|
// icon: 'el-icon-s-home',
|
|
|
|
|
|
// },
|
|
|
|
|
|
// },
|
|
|
|
|
|
// {
|
|
|
|
|
|
// path: '/sys',
|
|
|
|
|
|
// name: 'Resource',
|
|
|
|
|
|
// redirect: '/sys/resources',
|
|
|
|
|
|
// meta: {
|
|
|
|
|
|
// title: '系统管理',
|
|
|
|
|
|
// // 资源code,用于校验用户是否拥有该资源权限
|
|
|
|
|
|
// code: 'sys',
|
|
|
|
|
|
// // isKeepAlive: true,
|
|
|
|
|
|
// icon: 'el-icon-monitor',
|
|
|
|
|
|
// },
|
|
|
|
|
|
// children: [
|
|
|
|
|
|
// {
|
|
|
|
|
|
// path: 'sys/resources',
|
|
|
|
|
|
// name: 'ResourceList',
|
|
|
|
|
|
// component: () => import('@/views/system/resource'),
|
|
|
|
|
|
// meta: {
|
|
|
|
|
|
// title: '资源管理',
|
|
|
|
|
|
// code: 'resource:list',
|
|
|
|
|
|
// isKeepAlive: true,
|
|
|
|
|
|
// icon: 'el-icon-menu',
|
|
|
|
|
|
// },
|
|
|
|
|
|
// },
|
|
|
|
|
|
// {
|
|
|
|
|
|
// path: 'sys/roles',
|
|
|
|
|
|
// name: 'RoleList',
|
|
|
|
|
|
// component: () => import('@/views/system/role'),
|
|
|
|
|
|
// meta: {
|
|
|
|
|
|
// title: '角色管理',
|
|
|
|
|
|
// code: 'role:list',
|
|
|
|
|
|
// isKeepAlive: true,
|
|
|
|
|
|
// icon: 'el-icon-menu',
|
|
|
|
|
|
// },
|
|
|
|
|
|
// },
|
|
|
|
|
|
// {
|
|
|
|
|
|
// path: 'sys/accounts',
|
|
|
|
|
|
// name: 'ResourceList',
|
|
|
|
|
|
// component: () => import('@/views/system/account'),
|
|
|
|
|
|
// meta: {
|
|
|
|
|
|
// title: '账号管理',
|
|
|
|
|
|
// code: 'account:list',
|
|
|
|
|
|
// isKeepAlive: true,
|
|
|
|
|
|
// icon: 'el-icon-menu',
|
|
|
|
|
|
// },
|
|
|
|
|
|
// },
|
|
|
|
|
|
// ],
|
|
|
|
|
|
// },
|
|
|
|
|
|
// {
|
|
|
|
|
|
// path: '/machine',
|
|
|
|
|
|
// name: 'Machine',
|
|
|
|
|
|
// redirect: '/machine/list',
|
|
|
|
|
|
// meta: {
|
|
|
|
|
|
// title: '机器管理',
|
|
|
|
|
|
// // 资源code,用于校验用户是否拥有该资源权限
|
|
|
|
|
|
// code: 'machine',
|
|
|
|
|
|
// // isKeepAlive: true,
|
|
|
|
|
|
// icon: 'el-icon-monitor',
|
|
|
|
|
|
// },
|
|
|
|
|
|
// children: [
|
|
|
|
|
|
// {
|
|
|
|
|
|
// path: '/list',
|
|
|
|
|
|
// name: 'MachineList',
|
|
|
|
|
|
// component: () => import('@/views/ops/machine'),
|
|
|
|
|
|
// meta: {
|
|
|
|
|
|
// title: '机器列表',
|
|
|
|
|
|
// code: 'machine:list',
|
|
|
|
|
|
// isKeepAlive: true,
|
|
|
|
|
|
// icon: 'el-icon-menu',
|
|
|
|
|
|
// },
|
|
|
|
|
|
// },
|
|
|
|
|
|
// ],
|
|
|
|
|
|
// },
|
|
|
|
|
|
// {
|
|
|
|
|
|
// path: '/personal',
|
|
|
|
|
|
// name: 'personal',
|
|
|
|
|
|
// component: () => import('@/views/personal/index.vue'),
|
|
|
|
|
|
// meta: {
|
|
|
|
|
|
// title: '个人中心',
|
|
|
|
|
|
// isKeepAlive: true,
|
|
|
|
|
|
// icon: 'el-icon-user',
|
|
|
|
|
|
// },
|
|
|
|
|
|
// },
|
|
|
|
|
|
// ],
|
2021-06-07 17:22:07 +08:00
|
|
|
|
},
|
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
|
|
// 定义静态路由
|
|
|
|
|
|
export const staticRoutes: Array<RouteRecordRaw> = [
|
|
|
|
|
|
{
|
|
|
|
|
|
path: '/login',
|
|
|
|
|
|
name: 'login',
|
|
|
|
|
|
component: () => import('@/views/login/index.vue'),
|
|
|
|
|
|
meta: {
|
2022-12-13 11:03:15 +08:00
|
|
|
|
title: '登录',
|
2021-06-07 17:22:07 +08:00
|
|
|
|
},
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
path: '/404',
|
|
|
|
|
|
name: 'notFound',
|
|
|
|
|
|
component: () => import('@/views/error/404.vue'),
|
|
|
|
|
|
meta: {
|
|
|
|
|
|
title: '找不到此页面',
|
|
|
|
|
|
},
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
path: '/401',
|
|
|
|
|
|
name: 'noPower',
|
|
|
|
|
|
component: () => import('@/views/error/401.vue'),
|
|
|
|
|
|
meta: {
|
|
|
|
|
|
title: '没有权限',
|
|
|
|
|
|
},
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
path: '/machine/terminal',
|
|
|
|
|
|
name: 'machineTerminal',
|
|
|
|
|
|
component: () => import('@/views/ops/machine/SshTerminalPage.vue'),
|
|
|
|
|
|
meta: {
|
|
|
|
|
|
// 将路径 'xxx?name=名字' 里的name字段值替换到title里
|
|
|
|
|
|
title: '终端 | {name}',
|
|
|
|
|
|
// 是否根据query对标题名进行参数替换,即最终显示为‘终端_机器名’
|
|
|
|
|
|
titleRename: true,
|
2022-08-29 21:43:24 +08:00
|
|
|
|
},
|
|
|
|
|
|
},
|
2021-06-07 17:22:07 +08:00
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
|
|
// 定义404界面
|
|
|
|
|
|
export const pathMatch = {
|
|
|
|
|
|
path: '/:path(.*)*',
|
|
|
|
|
|
redirect: '/404',
|
|
|
|
|
|
};
|