header-sider-layout
Version:
ant-design-pro layout, based on pro-layout, with header and sider layout.
41 lines (40 loc) • 1.46 kB
TypeScript
import './Header.less';
import React, { Component } from 'react';
import { MenuProps } from 'antd/lib/menu';
import { BasicLayoutProps } from './BasicLayout';
import { GlobalHeaderProps } from './GlobalHeader';
import { Settings } from './defaultSettings';
import { WithFalse, MenuDataItem } from './typings';
export interface HeaderViewProps extends Partial<Settings>, GlobalHeaderProps {
isMobile?: boolean;
collapsed?: boolean;
logo?: React.ReactNode;
autoHideHeader?: boolean;
menuRender?: BasicLayoutProps['menuRender'];
headerRender?: BasicLayoutProps['headerRender'];
rightContentRender?: WithFalse<(props: HeaderViewProps) => React.ReactNode>;
siderWidth?: number;
headerMenuData?: MenuDataItem[];
/**
* 要给头部菜单的props, 参考antd-menu的属性。https://ant.design/components/menu-cn/
*/
headerMenuProps?: MenuProps;
}
interface HeaderViewState {
visible: boolean;
}
declare class HeaderView extends Component<HeaderViewProps, HeaderViewState> {
static getDerivedStateFromProps(props: HeaderViewProps, state: HeaderViewState): HeaderViewState | null;
state: {
visible: boolean;
};
ticking: boolean;
oldScrollTop: number;
componentDidMount(): void;
componentWillUnmount(): void;
getHeadWidth: () => string;
handScroll: () => void;
renderContent: () => {} | null | undefined;
render(): React.ReactNode;
}
export default HeaderView;