header-sider-layout
Version:
ant-design-pro layout, based on pro-layout, with header and sider layout.
38 lines (37 loc) • 1.85 kB
TypeScript
import './BasicLayout.less';
import React from 'react';
import { BreadcrumbProps as AntdBreadcrumbProps } from 'antd/es/breadcrumb';
import { HeaderViewProps } from './Header';
import { MenuDataItem, MessageDescriptor, Route, RouterTypes, WithFalse } from './typings';
import defaultGetPageTitle from './getPageTitle';
import { Settings } from './defaultSettings';
import { localeType } from './locales';
import { BaseMenuProps } from './SiderMenu/BaseMenu';
import { SiderMenuProps } from './SiderMenu/SiderMenu';
export interface BasicLayoutProps extends Partial<RouterTypes<Route>>, SiderMenuProps, HeaderViewProps, Partial<Settings> {
logo?: React.ReactNode | WithFalse<() => React.ReactNode>;
locale?: localeType;
onCollapse?: (collapsed: boolean) => void;
headerRender?: WithFalse<(props: HeaderViewProps) => React.ReactNode>;
footerRender?: WithFalse<(props: HeaderViewProps, defaultDom: React.ReactNode) => React.ReactNode>;
menuRender?: WithFalse<(props: HeaderViewProps, defaultDom: React.ReactNode) => React.ReactNode>;
menuItemRender?: BaseMenuProps['menuItemRender'];
pageTitleRender?: WithFalse<typeof defaultGetPageTitle>;
formatMessage?: (message: MessageDescriptor) => string;
menuDataRender?: (menuData: MenuDataItem[]) => MenuDataItem[];
breadcrumbRender?: (routers: AntdBreadcrumbProps['routes']) => AntdBreadcrumbProps['routes'];
itemRender?: AntdBreadcrumbProps['itemRender'];
/**
* 是否禁用移动端模式,有的管理系统不需要移动端模式,此属性设置为true即可
*/
disableMobile?: boolean;
}
export declare type BasicLayoutContext = {
[K in 'location']: BasicLayoutProps[K];
} & {
breadcrumb: {
[path: string]: MenuDataItem;
};
};
declare const BasicLayout: React.FC<BasicLayoutProps>;
export default BasicLayout;