123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178 |
- import { isUrl } from '../utils/utils';
-
- // const menuData = [
- // {
- // name: 'dashboard',
- // icon: 'dashboard',
- // path: 'dashboard',
- // children: [
- // {
- // name: '分析页',
- // path: 'analysis',
- // },
- // {
- // name: '监控页',
- // path: 'monitor',
- // },
- // {
- // name: '工作台',
- // path: 'workplace',
- // // hideInBreadcrumb: true,
- // // hideInMenu: true,
- // },
- // ],
- // },
- // {
- // name: '表单页',
- // icon: 'form',
- // path: 'form',
- // children: [
- // {
- // name: '基础表单',
- // path: 'basic-form',
- // },
- // {
- // name: '分步表单',
- // path: 'step-form',
- // },
- // {
- // name: '高级表单',
- // authority: 'admin',
- // path: 'advanced-form',
- // },
- // ],
- // },
- // {
- // name: '列表页',
- // icon: 'table',
- // path: 'list',
- // children: [
- // {
- // name: '查询表格',
- // path: 'table-list',
- // },
- // {
- // name: '标准列表',
- // path: 'basic-list',
- // },
- // {
- // name: '卡片列表',
- // path: 'card-list',
- // },
- // {
- // name: '搜索列表',
- // path: 'search',
- // children: [
- // {
- // name: '搜索列表(文章)',
- // path: 'articles',
- // },
- // {
- // name: '搜索列表(项目)',
- // path: 'projects',
- // },
- // {
- // name: '搜索列表(应用)',
- // path: 'applications',
- // },
- // ],
- // },
- // ],
- // },
- // {
- // name: '详情页',
- // icon: 'profile',
- // path: 'profile',
- // children: [
- // {
- // name: '基础详情页',
- // path: 'basic',
- // },
- // {
- // name: '高级详情页',
- // path: 'advanced',
- // authority: 'admin',
- // },
- // ],
- // },
- // {
- // name: '结果页',
- // icon: 'check-circle-o',
- // path: 'result',
- // children: [
- // {
- // name: '成功',
- // path: 'success',
- // },
- // {
- // name: '失败',
- // path: 'fail',
- // },
- // ],
- // },
- // {
- // name: '异常页',
- // icon: 'warning',
- // path: 'exception',
- // children: [
- // {
- // name: '403',
- // path: '403',
- // },
- // {
- // name: '404',
- // path: '404',
- // },
- // {
- // name: '500',
- // path: '500',
- // },
- // {
- // name: '触发异常',
- // path: 'trigger',
- // hideInMenu: true,
- // },
- // ],
- // },
- // {
- // name: '账户',
- // icon: 'user',
- // path: 'user',
- // authority: 'guest',
- // children: [
- // {
- // name: '登录',
- // path: 'login',
- // },
- // {
- // name: '注册',
- // path: 'register',
- // },
- // {
- // name: '注册结果',
- // path: 'register-result',
- // },
- // ],
- // },
- // ];
-
- function formatter(data, parentPath = '/', parentAuthority) {
- return data.map(item => {
- let { path } = item;
- if (!isUrl(path)) {
- path = parentPath + item.path;
- }
- const result = {
- ...item,
- path,
- authority: item.authority || parentAuthority,
- };
- if (item.children) {
- result.children = formatter(item.children, `${parentPath}${item.path}/`, item.authority);
- }
- return result;
- });
- }
-
- export const getMenuData = (menuData) => formatter(menuData);
|