chore: backup layoutConfig before refactoring
This commit is contained in:
parent
91047c85fe
commit
a7e3edff28
79
src/common/libs/umi/layoutConfig.tsx.backup
Normal file
79
src/common/libs/umi/layoutConfig.tsx.backup
Normal file
@ -0,0 +1,79 @@
|
|||||||
|
// import Logo from '@/assets/bitcoin.webp';
|
||||||
|
import { MyIcons, MyIconsType, PermissionsType, useMyState } from '@/common';
|
||||||
|
import { Link, RuntimeConfig, history } from '@umijs/max';
|
||||||
|
import AvatarProps from '../../components/layout/AvatarProps';
|
||||||
|
|
||||||
|
const loopMenu = (permissions: PermissionsType[] | undefined) => {
|
||||||
|
let tree: PermissionsType[] = [];
|
||||||
|
let map: Record<number, PermissionsType> = {};
|
||||||
|
permissions?.forEach((permission) => {
|
||||||
|
map[permission.id] = {
|
||||||
|
path: permission.type === 'Button' ? 'null' : permission.path,
|
||||||
|
name: permission.name,
|
||||||
|
icon: permission.icon && MyIcons[permission.icon as MyIconsType],
|
||||||
|
children: [],
|
||||||
|
hideInMenu: permission.type === 'Button',
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
|
permissions?.forEach((permission) => {
|
||||||
|
let node = map[permission.id];
|
||||||
|
if (permission.parent_id !== null) {
|
||||||
|
map[permission.parent_id].children.push(node);
|
||||||
|
} else {
|
||||||
|
tree.push(node);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
return tree?.[0]?.children;
|
||||||
|
};
|
||||||
|
|
||||||
|
export const LayoutConfig: RuntimeConfig['layout'] = () => {
|
||||||
|
const { snap } = useMyState();
|
||||||
|
|
||||||
|
return {
|
||||||
|
title: snap.session.campus?.name ?? '总后台',
|
||||||
|
// logo: <img src={Logo} style={{ height: '30px' }} />,
|
||||||
|
logo: <></>,
|
||||||
|
layout: 'mix',
|
||||||
|
colorPrimary: '#1890ff',
|
||||||
|
siderWidth: 220,
|
||||||
|
pure: history.location.pathname === '/login',
|
||||||
|
avatarProps: {
|
||||||
|
render: () => <AvatarProps user={snap.session.user} />,
|
||||||
|
},
|
||||||
|
//水印设置
|
||||||
|
// waterMarkProps: {
|
||||||
|
// content: snap.session.user?.username,
|
||||||
|
// },
|
||||||
|
collapsedButtonRender: false,
|
||||||
|
token: {
|
||||||
|
bgLayout: '#eef0f3',
|
||||||
|
header: {
|
||||||
|
colorBgHeader: '#001529',
|
||||||
|
colorHeaderTitle: '#FFF',
|
||||||
|
colorTextRightActionsItem: '#FFF',
|
||||||
|
heightLayoutHeader: 50,
|
||||||
|
},
|
||||||
|
sider: {
|
||||||
|
colorMenuBackground: '#FFF',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
menuItemRender: (item, dom) => <Link to={item.path || '/'}>{dom}</Link>,
|
||||||
|
menu: {
|
||||||
|
params: snap.session.permissions,
|
||||||
|
request: async () => {
|
||||||
|
let objjs: any = [];
|
||||||
|
snap.session.permissions?.forEach((res: any) => {
|
||||||
|
objjs.push(res);
|
||||||
|
});
|
||||||
|
let data = objjs.sort((a: any, b: any) => {
|
||||||
|
return a._lft - b._lft;
|
||||||
|
});
|
||||||
|
const menus = loopMenu(data);
|
||||||
|
return Promise.resolve(menus);
|
||||||
|
},
|
||||||
|
},
|
||||||
|
unAccessible: <div>unAccessible</div>,
|
||||||
|
};
|
||||||
|
};
|
||||||
Loading…
x
Reference in New Issue
Block a user