generator-hcy-system
Version:
hcy system layout and pages
336 lines (330 loc) • 8.67 kB
text/typescript
/**
* @name umi 的路由配置
* @description 只支持 path,component,routes,redirect,wrappers,title 的配置
* @param path path 只支持两种占位符配置,第一种是动态参数 :id 的形式,第二种是 * 通配符,通配符只能出现路由字符串的最后。
* @param component 配置 location 和 path 匹配后用于渲染的 React 组件路径。可以是绝对路径,也可以是相对路径,如果是相对路径,会从 src/pages 开始找起。
* @param routes 配置子路由,通常在需要为多个路径增加 layout 组件时使用。
* @param redirect 配置路由跳转
* @param wrappers 配置路由组件的包装组件,通过包装组件可以为当前的路由组件组合进更多的功能。 比如,可以用于路由级别的权限校验
* @doc https://umijs.org/docs/guides/routes
* @param buttons 配置按钮权限,access唯一,使用驼峰命名,拼接菜单+按钮名称
* @param menuType 菜单类型:group,page,button
* @param access 唯一key,权限标识
* @param name 菜单名称
*/
// import HomeIcon from "./icons";
// BuildIcon, ThunderIcon, BuildingsIcon, HierarchyIcon, SelfCenterIcon}
// 是否是开发环境
// const isDev = process.env.NODE_ENV === 'development';
import childRouter from './childRoute';
export default [
...childRouter,
{
path: '/system',
name: 'system',
access: 'system',
menuType: 'group',
isFrame: false,
routes: [
{
path: '/system/roles',
name: 'roles',
access: 'roles',
component: './system/roles',
menuType: 'page',
isFrame: false,
buttons: [
{
name: 'disable/enable',
menuType: 'button',
access: 'roleDisable/roleEnable',
},
{
name: 'edit',
menuType: 'button',
access: 'roleEdit',
},
{
name: 'del',
menuType: 'button',
access: 'roleDel',
},
{
name: 'view',
menuType: 'button',
access: 'roleView',
},
{
name: 'addUser',
menuType: 'button',
access: 'roleAddUser',
},
{
name: 'config',
menuType: 'button',
access: 'roleConfig',
},
{
name: 'add',
menuType: 'button',
access: 'roleAdd',
},
{
name: 'remove user',
menuType: 'button',
access: 'roleRemoveUser',
},
],
},
{
path: '/system/operate',
name: 'operate',
component: './system/operate',
access: 'operate',
menuType: 'page',
isFrame: false,
},
{
path: '/system/dictionaries',
name: 'dictionaries',
access: 'dictionaries',
component: './system/dictionaries',
menuType: 'page',
isFrame: false,
buttons: [
{
name: 'disable/enable',
menuType: 'button',
access: 'dicDisable/dicEnable',
},
{
name: 'edit',
menuType: 'button',
access: 'dicEdit',
},
{
name: 'del',
menuType: 'button',
access: 'dicDel',
},
{
name: 'view',
menuType: 'button',
access: 'dicView',
},
{
name: 'sort',
menuType: 'button',
access: 'dicSort',
},
{
name: 'add',
menuType: 'button',
access: 'dicAdd',
},
],
},
{
path: '/system/menu',
name: 'menu',
access: 'menu',
component: './system/menu',
menuType: 'page',
isFrame: false,
/**
* @param key 唯一标识等于access,配置详情页等,参考如下配置
* routes: [
{
path: '/system/menu/detail',
key: 'menuDetail',
component: './',
menuType: 'detailPage',
name: 'detail',
isFrame: false,
},
],
*/
buttons: [
{
name: 'disable/enable',
menuType: 'button',
access: 'menuDisable/menuEnable',
},
{
name: 'edit',
menuType: 'button',
access: 'menuEdit',
},
{
name: 'sort',
menuType: 'button',
access: 'menuSort',
},
],
},
{
path: '/system/userManage',
name: 'userManage',
access: 'userManage', //二级-用户管理
component: './system/userManage',
menuType: 'page',
isFrame: false,
buttons: [
{
name: 'edit',
menuType: 'button',
access: 'userManageEdit',
},
{
name: 'del',
menuType: 'button',
access: 'userManageDel',
},
{
name: 'disable/enable',
menuType: 'button',
access: 'userManageDisable/userManageEnable',
},
{
name: 'reset',
menuType: 'button',
access: 'userManageReset',
},
{
name: 'dept/change',
menuType: 'button',
access: 'userManageChangeDept',
},
{
name: 'role/change',
menuType: 'button',
access: 'userManageChangeRole',
},
{
name: 'add',
menuType: 'button',
access: 'userManageAdd',
},
],
},
{
path: '/system/userOrganization',
name: 'userOrganization',
access: 'userOrganization', //二级-用户管理
component: './system/userManage',
menuType: 'page',
isFrame: false,
buttons: [
{
name: 'edit',
menuType: 'button',
access: 'userOrganizationEdit',
},
{
name: 'del',
menuType: 'button',
access: 'userOrganizationDel',
},
{
name: 'disable/enable',
menuType: 'button',
access: 'userOrganizationDisable/userOrganizationEnable',
},
{
name: 'reset',
menuType: 'button',
access: 'userOrganizationReset',
},
{
name: 'role/change',
menuType: 'button',
access: 'userOrganizationChangeRole',
},
{
name: 'add',
menuType: 'button',
access: 'userOrganizationAdd',
},
],
},
{
path: '/system/companyManage',
name: 'companyManage',
access: 'companyManage', //二级-团队管理
component: './system/companyManage',
menuType: 'page',
isFrame: false,
buttons: [
{
name: 'disable',
menuType: 'button',
access: 'companyDisable',
},
{
name: 'edit',
menuType: 'button',
access: 'companyEdit',
},
{
name: 'sort',
menuType: 'button',
access: 'companySort',
},
{
name: 'add',
menuType: 'button',
access: 'companyAdd',
},
{
name: 'del',
menuType: 'button',
access: 'companyDel',
},
],
},
],
},
{
path: '/login',
layout: false,
component: './login',
menuType: 'page',
},
{
path: '/home',
name: 'welcome',
access: 'login',
menuType: 'page',
routes: [
{
path: '/home',
menuType: 'page',
component: './home',
// redirect: '/home/center',
},
{
path: '/home/center',
name: 'center',
component: './account/center',
menuType: 'page',
},
{
path: '/home/settings',
name: 'settings',
component: './account/settings',
menuType: 'page',
},
],
// },
// ]
},
{
path: '/',
redirect: '/home',
},
{
path: '*',
layout: false,
component: './404',
},
];